【发布时间】:2018-01-18 02:56:10
【问题描述】:
正如标题所说,我未能通过 json ajax 将数据数组传递给 php。我正在使用codeigniter,我做错了什么?这是jQuery代码:
function load_page_data1(){
var data = [];
data['val'] = "solid_t1";
$.ajax({
type: 'POST',
url: BASE_URL+'index.php/Chart_varnish/getdata',
data: data,
dataType: 'json',
success: function(output) {
alert(output);
},
error: function(request, status, error){
alert("Error: not working");
}
});
}
这里是php代码:
function getdata(){
$parameter = '';
if(isset($_POST))
{
if(isset($_POST['val']))
{
$parameter = $_POST['val'];
} else
{
echo "failed!";
}
}
$this->load->model('Chart');
$this->load->helper('url');
$data1 = $this->Chart->getdata_solid($parameter);
echo json_encode($data1);
}
决赛:
伙计们,事实证明这些值确实从 jQuery 传递到 php,问题是我在 javascript 函数中愚蠢地调用了两次相同的 php 函数,然后第二次调用时没有发布“val”,所以php函数错误并停止。
谢谢大家的回答,至少我学会了使用jQuery传递数据的不同方法。
【问题讨论】:
-
你需要对你的数组进行字符串化
JSON.stringify(data); -
感谢您的回答,按照您的建议尝试后仍然无法正常工作。
标签: php jquery json ajax codeigniter