Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/71.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在成功的AJAX/jQuery帖子中返回PHP变量_Php_Jquery_Ajax_Codeigniter - Fatal编程技术网

如何在成功的AJAX/jQuery帖子中返回PHP变量

如何在成功的AJAX/jQuery帖子中返回PHP变量,php,jquery,ajax,codeigniter,Php,Jquery,Ajax,Codeigniter,如何使用AJAX在PHP中返回变量?我目前正在控制器中使用echo在下拉列表中显示价格。在名为price的div中更改 但是,我有一个隐藏字段,需要在更改时将行id返回给该字段。如何在jQuery中分配返回变量,以便在隐藏字段中回显它 jQuery 控制器 看法 这是我的隐藏字段,我想在每次更改表单时将VAR传递给它。 “/> 感谢您的帮助!好的..一个选项是返回一个JSON对象。要在PHP中创建JSON对象,您需要从一个值数组开始,然后执行JSON\u encode($arr)。这将返回一个J

如何使用AJAX在PHP中返回变量?我目前正在控制器中使用echo在
下拉列表中显示价格。在名为price的
div中更改

但是,我有一个隐藏字段,需要在更改时将行id返回给该字段。如何在jQuery中分配返回变量,以便在隐藏字段中回显它

jQuery 控制器 看法 这是我的隐藏字段,我想在每次更改表单时将VAR传递给它。 “/>


感谢您的帮助!

好的..一个选项是返回一个JSON对象。要在PHP中创建JSON对象,您需要从一个值数组开始,然后执行
JSON\u encode($arr)
。这将返回一个JSON字符串

$arr = array(
  'stack'=>'overflow',
  'key'=>'value'
);
echo json_encode($arr);

{"stack":"overflow","key":"value"}
现在在jQuery中,您必须告诉您的
$.ajax
调用您需要一些JSON返回值,因此您需要指定另一个参数-
数据类型:“JSON”
。现在您在
success
函数中返回的值将是一个普通的JavaScript对象

$.ajax({
  type: "POST",
  url: "...",
  data: query,
  dataType: 'json',
  success: function(data){
    console.log(data.stack); // overflow
    console.log(data.key);   // value
  }
});
出口不显示除应答之外的其他内容。应答最好是数组或对象。 你可以在

success: function(data)
             { data }
数据是响应数组或您回送的任何内容。。 例如

echo json_encode(array('some_key'=>'yesss')); exit();
在jquery

success: function(data){ alert(data.some_key); }

若您只从php respone向ajax返回单个值,那个么您可以使用val方法将其设置为隐藏字段

$("#hidden_fld").val(return_val); 

我实现了你的建议。它似乎在工作,但有一些问题。。请看新问题谢谢!;)如何将此字符串放入php变量?@151291-在我的示例中,
query
变量中的数据将在该代码执行
AJAX
请求时到达
$\u POST
变量中。@151291-它是It’真的不清楚你在问什么。请打开一个新帖子(如果你找不到一个已经存在的问题的答案)@151291-如果看不到您正在使用的代码,就很难提出建议。这就是为什么我建议打开一篇新帖子来解决您的问题。controller返回json编码的对象,如何将此对象导入php脚本?这意味着如何将json对象从ajax成功函数传递到php中script@151291开始任何PHP行为ion您必须发出新的请求,因此您必须再次发出ajax..但是将第二个ajax触发到同一个脚本不是合乎逻辑的1 ajax,最好将您的逻辑放在使用ajax请求触发的第一个脚本中,然后运行您要添加的第二个逻辑。(当然,如果可能的话..否则您必须发出新的ajax请求)json.decode()不是PHP函数。请转到PHP.net搜索json处理文档,您会理解的。我不是老师。这是我的错误,不是
json.decode
its
json\u decode()
,这就是php函数,对吗?根据您的回答,如果是对象,我如何将
数据
值输入php脚本。
echo json_encode(array('some_key'=>'yesss')); exit();
success: function(data){ alert(data.some_key); }
$("#hidden_fld").val(return_val);