我有一个发布到服务器的按钮。这可以很好地采用两个参数来执行返回JSON
个对象的查询。我希望在单击按钮后立即使用一些返回的JSON
数据异步更新网页。我有这个代码返回undefined或只是所有JSON
对象中的最后一个值。我不知道我做错了什么,有人能指出我正确的方向吗?
$('#mybutton').click(function() {
$.post('search.php', {
regNo: $("#regNo").val(),
datepicker: $(".datepicker").text()
},
function(data) {
var obj = data.valueOf();
$.each(obj, function(i) {
$('#responsetxt').html("<b>"+obj[i].time+ "</b>");
});
},
'json');
});
});
答案 0 :(得分:0)
如果您收到undefined
,那么您发送的数据很可能存在问题,或者没有匹配项。
至于“只获取最后一个”,嗯......在你的.each
中,你反复覆盖#responsetxt
内容,所以......只有最后一个内容应该不足为奇离开了。相反,请考虑构建一个字符串,然后使用构造的字符串在循环之后调用.html()
。
答案 1 :(得分:0)
试试这个:
$('#mybutton').click(function() {
$.post('search.php', {
regNo: $("#regNo").val(),
datepicker: $(".datepicker").text()
},
function(data) {
$.each(data, function(i) {
$('#responsetxt').html("<b>"+data[i].time+ "</b>");
});
},
'json');
});});
答案 2 :(得分:0)
我将丑陋的索引data[i].time
更改为data.time
。
` $('#mybutton').click(function() {
$.post('search.php', {
regNo: $("#regNo").val(),
datepicker: $(".datepicker").text()
},
function(data) {
$.each(data, function(i) {
$('#responsetxt').html("<b>"+data.time+ "</b>");
});
},
'json');
});});`