当选择框发生变化时,我正在使用jquery来调用PHP脚本。我能够获得更改的选择项的ID,但是我没有得到PHP脚本的输出。 Javascript是
function initagents() {
$('select.agent').on('change', function() {
var id = $(this).attr("id");
console.log(id);
var data = { id: id };
$.ajax({
type: "POST",
dataType: "json",
url: "updateagent.php",
data: data
}).done(function(msg) {
console.log(msg);
});
});
}
和PHP是
print_r ( $_POST);
有什么想法吗?
答案 0 :(得分:1)
请使用
echo json_encode($_POST['id']);
而不是
print_r($_POST);
答案 1 :(得分:0)
您在onChange
内放置了选择框的function initagents()
事件时出错了。
修正代码:
$('select.agent').on('change', function() {
var id = $(this).attr("id");
console.log(id);
var data = {
id: id
};
$.ajax({
type: "POST",
dataType: "json",
url: "updateagent.php",
data: data
}).done(function(msg) {
console.log(msg);
});
});
答案 2 :(得分:0)
尝试使用以下代码:
function getID(val) {
alert(val);
$.ajax({
type: 'POST',
url: 'post.php',
data: {
id: val
},
success: function(data) {
alert(data);
}
});
}
<select name="pks" onchange='getID(this.value);'>
<option value="1">Option1</option>
<option value="2">Option2</option>
</select>
答案 3 :(得分:0)
似乎你的代码是正确的,它应该将数据发送到php文件。但我也看到,你没有将选定的值发送到PHP脚本。您正在发布所选元素ID。
您是否在子文件夹中尝试此操作?确保javascript中的php文件路径是正确的。如果您可以尝试完整路径,那就更好了。例如
url: "http://localhost/myproject/updateagent.php",