如何在成功的AJAX/jQuery帖子中返回PHP变量
如何使用AJAX在PHP中返回变量?我目前正在控制器中使用echo在如何在成功的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
下拉列表中显示价格。在名为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
itsjson\u decode()
,这就是php函数,对吗?根据您的回答,如果是对象,我如何将数据
值输入php脚本。
echo json_encode(array('some_key'=>'yesss')); exit();
success: function(data){ alert(data.some_key); }
$("#hidden_fld").val(return_val);