Javascript jQuery/PHP/Ajay:使用jQuery管理来自PHP的关联数组很热
在表单中,在用户从select menù中选择一个字段后,我希望以下字段自动填充相关数据,这就是我到目前为止所做的:Javascript jQuery/PHP/Ajay:使用jQuery管理来自PHP的关联数组很热,javascript,php,jquery,ajax,Javascript,Php,Jquery,Ajax,在表单中,在用户从select menù中选择一个字段后,我希望以下字段自动填充相关数据,这就是我到目前为止所做的: <?php $deep=""; include($deep."include/head.php"); if (isset($_POST["tipologia"])) { $impostazione = $sistema->impostazioni->impostazioneInfo("SOLO_DORMIRE"); ech
<?php
$deep="";
include($deep."include/head.php");
if (isset($_POST["tipologia"])) {
$impostazione = $sistema->impostazioni->impostazioneInfo("SOLO_DORMIRE");
echo $impostazione;
}
?>
最后在主页中,这是我在jQuery ready函数中看到的内容:
jQuery("#tipologia").on('change', function() {
jQuery.ajax({
url: "get_databy_type.php",
type: "POST",
data: {tipologia: jQuery("#tipologia").val()},
success: function(data) {
alert(data);
}
});
}
我希望警报能够从php打印结果数组,但我得到了很多我不知道的东西。如何检索所有字段以便填充html表单的其余部分?在服务器端使用以json
格式发送数据。并在ajax
配置中将dataType
设置为json
服务器端:
echo json_encode($impostazione);
客户端:
jQuery.ajax({
url: "get_databy_type.php",
type: "POST",
data: {
tipologia: jQuery("#tipologia").val()
},
dataType: 'json',
// ^^^^^^^^^^^^^^
success: function(data) { // data is json object
alert(data.id); // Alert id from the object
}
});
@LoryLory您从
ajax
获得的响应是什么,请参见控制台的网络选项卡中的echo json_encode($impostazione)
或返回json_编码(tmp)代码>。另外,在echo之前,输入头('Content-Type:application/json')代码>(可能是他的错误,不确定)我已经尝试了你说的所有内容,但仍然没有任何提示。。。在网络选项卡中,我看不到任何有用的内容……如果直接打开get_databy_type.php,是否会看到php错误?也许可以添加一个错误回调来查看请求是否失败。好的,我想我已经解决了这个问题。首先,我必须调用php函数头('Content-Type:application/json')……这与默认情况下我在每个php页面中包含的另一个头崩溃了:我了解到,在对php程序进行ajax调用时,json头必须是唯一的头!!!
jQuery.ajax({
url: "get_databy_type.php",
type: "POST",
data: {
tipologia: jQuery("#tipologia").val()
},
dataType: 'json',
// ^^^^^^^^^^^^^^
success: function(data) { // data is json object
alert(data.id); // Alert id from the object
}
});