0

基于this answer尝试修改jQuery以将数据发送到PHP并以JSON格式返回。

创建了这个

$.post(
    "__02.php", 
    {
        'date_day': date_day,
        'currency': currency
    }, 
    function (data, textStatus) {
        $('#currency_load').html(data);
        $('#is_row_changed_currency' + suffix).val(0)
    }, 
    "json"
);

PHP是这样的

 $arr = array ('item1'=>"I love jquery4u",'item2'=>"You love jQuery4u",'item3'=>"We love jQuery4u");
echo json_encode($arr);

但不起作用。需要纠正什么?

对于没有 JSON 的比较,这有效:

$.post("__02.php", { 'date_day': date_day, 'currency': currency }, function(data) {
    $('#currency_load').html(data);
    $('#is_row_changed_currency' + suffix).val(0)
});

json有必要获得以下目标

jquery 代码之类的

$('#div1').html("<p>item1="+data.item1+"</p>");
$('#div2').html("<p>item2="+data.item2+"</p>");

html喜欢

<div id="div1"></div>
<div id="div2"></div>

目标肯定是id从 php 数组中显示相应的值/元素。没有json不知道该怎么做。html另外还div需要使用input。所以在input1 php数组值[0]等

似乎function (data, textStatus)必须修改为function (data, success)

4

1 回答 1

1

.html()您正在传递一个不起作用的对象(整个 JSON 响应) 。您需要从对象中挑选一些东西来显示,例如:

$( '#currency_load' ).html( data.item1 );

如果您只想确认已正确接收数据,请改用控制台console.log( data )

于 2013-08-24T17:26:27.450 回答