$ .getJSON根本不工作..

时间:2011-05-12 16:30:50

标签: jquery ajax json

我正在尝试使用JSON将PHP数组提供给jQuery但是没有太多运气。

$(".add-size").click(function(event) {

    $("#is_ajax").val('true');

    var dataString = 'ID=' + $("#product_ID").val() + '&size=' + $(this).val() + '&is_ajax=' + $("#is_ajax").val();

    $.getJSON( "../bin/func/actions/add.action.php", dataString, function(data) {
        $("#runningQuantity").text(data.runningQuantity);
        $("#runningTotal").text(data.runningTotal);
    });
    event.preventDefault();
});

是jQuery运行不佳。

$list['runningTotal'] = $runningTotal;
$list['runningQuantity'] = $runningQuantity;

echo json_encode( $list );

是add.action.php中的相关PHP,它创建的字符串似乎格式正常。例如:

{"runningTotal":90,"runningQuantity":18}

但#runningTotal或#runningQuantity都没有发生任何事情,他们只是保持不变?我可能完全忽略了这一点。

1 个答案:

答案 0 :(得分:0)

Per Jquery的Documentation要发送到服务器的数据必须是键值对。你可以做以下两件事之一:

$.getJSON( "../bin/func/actions/add.action.php", {Id : $("#product_ID").val(), .....}, function(data) {
        $("#runningQuantity").text(data.runningQuantity);
        $("#runningTotal").text(data.runningTotal);
    });

或 通过添加?将数据字符串添加到URL所以它变成了一个查询字符串。

$.getJSON( "../bin/func/actions/add.action.php?" + datastring, function(data) {
            $("#runningQuantity").text(data.runningQuantity);
            $("#runningTotal").text(data.runningTotal);
        });

HTH