jQuery返回undefined JSON

时间:2014-03-05 14:59:38

标签: javascript jquery json

我有一个发布到服务器的按钮。这可以很好地采用两个参数来执行返回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');
    });
});

3 个答案:

答案 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');
});});`