Javascript 使用ajax调用php脚本不起作用
我正试图按照下面这个例子的标题来做: 但是我不能让它工作 下面是javascript函数:Javascript 使用ajax调用php脚本不起作用,javascript,php,ajax,Javascript,Php,Ajax,我正试图按照下面这个例子的标题来做: 但是我不能让它工作 下面是javascript函数: <script> function errorInProyect(err){ if (document.getElementById("projname").value == ""){ document.getElementById("projname_status").innerHTML = "El nombre del proyecto no puede est
<script>
function errorInProyect(err){
if (document.getElementById("projname").value == ""){
document.getElementById("projname_status").innerHTML = "El nombre del proyecto no puede estar vacio";
}
else{
jQuery.ajax({
type: "POST",
url: 'addproject.php',
dataType: 'json',
data: {functionname: 'prueba'},
success: function (obj) {
document.getElementById("projname_status").innerHTML = "El resultado fue " + obj.result;
}
});
}
}
</script>
函数errorInProyect(错误){
if(document.getElementById(“projname”).value==“”){
document.getElementById(“projname_status”).innerHTML=“项目名称”无需注册;
}
否则{
jQuery.ajax({
类型:“POST”,
url:'addproject.php',
数据类型:“json”,
数据:{functionname:'prueba'},
成功:功能(obj){
document.getElementById(“projname_status”).innerHTML=“El resultado fue”+obj.result;
}
});
}
}
我的addproject.php是:
<?php
$res = array();
$res['result'] = "soy la prueba";
json_encode($res);
?>
我知道调用该函数是因为正在打印空字符串情况下的消息。我做错了什么?您没有打印
json\u encode
的结果
将addproject.php
中的代码更改为:
echo json_encode($res);
函数errorInProyect(错误){
if(document.getElementById(“projname”).value==“”){
document.getElementById(“projname_status”).innerHTML=“项目名称”无需注册;
}
否则{
$.post(“addproject.php”,{'functionname':'prueba'},
功能(数据)
{
document.getElementById(“projname_status”).innerHTML=“El resultado fue”+data.result;
}“json”);
}
}
你的php页面是
<?php
$res = array();
$res['result'] = "soy la prueba";
echo json_encode($res);
?>
你不打印任何东西吗?你在哪里写的这个函数prueba?根据我读到的例子,$res应该是结果,这就是我在obj.result中得到的结果。如果代码成功进入函数,我应该能够看到它。我理解这个例子错了吗?因为在示例中,函数名仅用于switch语句,所以要实际调用函数……还有一件事。在我的辩护中,链接中的示例在encode命令中没有回声,尽管……你是对的,示例似乎也错了。很高兴它成功了!请参阅$.post()部分。它没有被复制和粘贴。做出了必要的改变
<?php
$res = array();
$res['result'] = "soy la prueba";
echo json_encode($res);
?>