我想将数据从Ajax函数发送到codeignitor中的控制器,但是我得到了空
$.ajax({
url:'shop/compare/getProductMeta',
method: "POST",
contentType: "json",
data: {"proId": proID},
success:function(data)
{
for (i =0; i< data.length; i++) {
alert(data[i]);
}
},
error: function(xhr, status, error) {
alert('here 1');
}
});
在代码触发控制器中,我正在将数据接收为
public function compare($param1)
{
if($param1=='getProduct')
{
$result=$this->metaCRUD->getAllProducts();
echo json_encode($result);
}elseif ($param1=='getItem') {
$result=$this->siteCRUD->getAlItems();
echo json_encode($result);
}elseif($param1=='getProductMeta')
{
$pid=$this->input->post("proId");
echo ('value'.$pid);
$result=$this->siteCRUD->getProductMeta($pid);
echo json_encode($result);
}
}
我在这里为NULL
答案 0 :(得分:0)
用此代码替换代码
$.ajax({
url: 'shop/compare/getProductMeta',
type: 'POST',
data: {"proId": proID},
error: function() {
alert('Something is wrong');
},
success: function(data) {
for (i =0; i< data.length; i++) {
alert(data[i]);
}
}
});
如果您仍然遇到问题,请尝试打印$_POST
来查看要获取的数据类型。
答案 1 :(得分:0)
infer U
..不带引号,并确保该值正确而不是未定义。
答案 2 :(得分:0)
删除contentType: "json"
或就像@ ashfaq-ahmed的答案一样