2016-09-20 48 views
0

我是新兴的网络技术,并试图通过示例建立起来。这个问题似乎是反复出现的。但是,我无法获得正确的语法/方法。不能在ajax调用中设置返回值

我试图读取由ajax调用(action.php)设置的值,并在客户端(js)使用它。下面是我尝试

$.ajax({ 
     type: "POST", 
     url: "/crm/action.php", 
     data: form, 
     success: function(data){ 
      alert(data.error);   
     }, 
     error: function() { 
      myalert("DATABASE ERROR","X Record not saved. if this error persists, contact your system administrator"); 
      } 
     }); 

而且action.php的简单尝试变量“错误”设置如下

$error = 1; 

我所有的尝试都返回“不确定”为止。

+0

console.log(data)会返回什么? –

+0

你是否返回变量或只设置它?将警报设置为console.log并使用data而不是data.error来检查是否存在任何东西 – RST

+0

我想返回该变量。出于测试目的,$ error = 1是php文件 – user2810718

回答

0

您action.php的更改为以下:

die(json_encode(['error' => 1])); 

确保没有别的输出,但上面。

+0

中的唯一声明,而不是'die()',只需使用'echo json_encode(['error'=> 1])''。同样,OP也是新的,可能最好告诉他他需要PHP版本大于等于5.4的'[]'速记数组语法才能工作。 – Samundra

+0

变量$ error是通用的。我想了解如何从服务器端返回任何变量进程 – user2810718

+0

die(json_encode(['I_want_that_name'=> $ anyVariableIHave])); 然后在您的javascript: 成功:function(data){ alert(data.I_want_that_name); }, –