0

在视图中:

function updateData(that){


    f = new test();

for (var i = 0; i < dataContext.length; i++)
{
    f.test.push(new Person(dataContext[i].test, dataContext[i].test1, dataContext[i].Line1, dataContext[i].Id));

}

        $.post("<?php echo $base_url;?>index.php/controller/function/<?php echo $details['Id'];?>", { data: JSON.stringify(f) }, function (res) {
    });
}

现在在 php 函数中,函数:

function () {
    print_r($_POST);
}

返回一个空数组。

数据基本上在 javascript 向导中。似乎当我单击“完成”时,页面不会自行刷新。$_POST 仅在页面首次加载时调用。

我对javascript很陌生,不知道我做错了什么,干杯。

4

1 回答 1

0

尝试JSON.stringify(that)代替JSON.stringify(f)喜欢,

function updateData(that){
    var url="<?php echo $base_url;?>index.php/controller/function/<?php echo $details['Id'];?>";
    $.post(url, { data: JSON.stringify(that) },function (res) {
        alert(res);
    });
}

如果已定义则更新f,然后尝试,

function updateData(that){
    var url="<?php echo $base_url;?>index.php/controller/function/<?php echo $details['Id'];?>";
    $.post(url, { data: JSON.stringify(f) },function (res) {
        alert(res);
    });
}

some namephp function或打电话给jquery,比如,

// call updateData function in your controller
var url="<?php echo $base_url;?>index.php/controller/updateData/<?php echo $details['Id'];?>";

创建一个updateDatacontroller喜欢的功能,

function updateData($id=''){
    print_r($_POST);
}
于 2013-11-01T09:50:15.347 回答