这是关于jquery的代码。
当我输入一些文字时,唯一的显示是[object Object]
,但当我console.log(areaname)
时,结果还可以。
已经对数据进行字符串化,但结果不正确
$('#arealist').btsListFilter('#searcharea', {
sourceTmpl: '<a class="list-group-item" href="http://localhost:3000/legone/survey/surveyform/households"><span>' + {
areaname
} + '</span></a>',
sourceData: function(text, callback) {
var data = {};
data.areaname = $('#searcharea').val();
console.log(areaname + "areaname");
/*$.getJSON("http://localhost:3000/legone/survey/dblookup/listareas", {provcode:province,keyword:keyword},
function ( jsonData )
{
callback(jsonData);
} );*/
return $.ajax({
type: 'POST',
data: JSON.stringify(data),
contentType: 'application/json',
url: 'http://localhost:3000/legone/survey/dblookup/listareas',
success: function(data) {
//console.log(data[0].areaname);
areaname = data.areaname;
callback(data);
}
});
}
});
答案 0 :(得分:2)
您获得[object Object]
的原因是因为您正在打印对象。
areaname
不是对象在您的代码中,您有:
sourceTmpl: '<a class="list-group-item" href="..."><span>' + {
areaname
} + '</span></a>',
包装变量{areaname}
的括号会创建一个正在打印的对象
areaname
是一个对象(括号是外部库)您要做的是打印对象示例的单独键:
// example content of areaname object
// areaname = {
// foo = "obi_1",
// bar = "kenobi"
// }
// Thus
sourceTmpl: '<a class="list-group-item" href="..."><span>'
+ areaname.foo + ' ' + areaname.bar
+ '</span></a>';
答案 1 :(得分:1)
使用以下代码段:
var jsonObj=JSON.stringify(obj);
console.log("data:"+jsonObj);