我在我的电脑上使用 Easyphp 5.3.5.0 来构建一些 Ajax 简单的动态操作。
我想在点击“添加项目”按钮时刷新列表,所以按钮在点击时有一个事件。
第一个 javascript 页面在点击事件中执行此操作:
$.post("operation/insert.php", { type : "cliente", name : nome, surname : cognome , description : descrizione, day : giornoNascita, month : meseNascita, year : annoNascita }, function(data){
alert("HELLO!");
},'json');
在 Php 页面“operation/insert.php”中,在对变量进行初步检查后,我运行以下代码:
$q_add_client = mysql_query($query);
$return = array(
id => mysql_insert_id(),
response => 0
);
echo json_encode($return);
我确定查询已执行,因为我可以在我的数据库中看到新项目。但是,最后,我没有看到我的警报(“HELLO!”),所以我认为 json_encode 函数及其参数存在问题。它不会在 Javascript 模块中的 $.post(...) 行执行我的回调函数。
谁能帮帮我?谢谢
最佳答案
如果您告诉 $.post 期望来自服务器的 'json',并且 每当您将 json 发送到输出时,您应该设置正确的内容类型 第一:
$q_add_client = mysql_query($query);
$return = array(
'id' => mysql_insert_id(),
'response' => 0
);
header("content-type: application/json");
echo json_encode($return);
关于javascript - Easyphp 5.3.5.0 和 Ajax : maybe json_encode,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20436887/