Php 语法错误意外的令牌u Json错误

Php 语法错误意外的令牌u Json错误,php,ajax,json,yui,Php,Ajax,Json,Yui,我正在调用一个YUI函数,以从返回json格式的正确状态的php函数获取状态消息 在中触发事件时,将显示错误消息:- “语法错误意外标记u” 资料来源如下:- var ajax_url = 'initcalls.php?action=ping'; var pngbtn = Y.one('#id_solr_btn_ping'); pngbtn.on('click', function(e) { Y.one('#solr_ping_status').setHTML(

我正在调用一个YUI函数,以从返回json格式的正确状态的php函数获取状态消息

在中触发事件时,将显示错误消息:-

“语法错误意外标记u”

资料来源如下:-

 var ajax_url = 'initcalls.php?action=ping';
 var pngbtn = Y.one('#id_solr_btn_ping');
    pngbtn.on('click', function(e) {

          Y.one('#solr_ping_status').setHTML('&nbsp;<img src="pix/ajax-circle.gif">');
          Y.io(ajax_url, {
            on : {
                success : function(data) {
        try
        {
              var resp = Y.JSON.parse(data.responseText);
                    }
        catch (e)
                     {
                           alert(e);
                           return;
                     }
        if (resp.status == 'ok') {
           Y.one('#solr_ping_status').setHTML('&nbsp;<img src="pix/success.png">');
           timeout("clearSaveStatus('#solr_ping_status')",2000);
        }
        else {
        Y.one('#solr_ping_status').setHTML('&nbsp;<img src="pix/warning.png">');
        }}
        }
              });

            return false; 

           });

Y.io
的回调接收两个参数:事务id和第二个参数中的响应对象:

Y.io(url, {
  on: {
    success: function (id, response) {
      // ...
    }
  }
});
您收到的错误可能是因为您正在访问未定义的
id
responseText
属性。未定义的值被强制为
“undefined”
字符串,当遇到“undefined”中的
u
时,
JSON.parse
抛出


您只需要使用第二个参数作为
数据
对象。

您确定
数据中包含的确切完整响应。responseText
{“状态”:“ok”}
?似乎PHP可能正在发送其他信息,可能是一条错误消息。我尝试了这个简单的PHP页面&它的返回正是我们应该期望的。非常感谢您为我节省了这么多:)他们是否有任何方法来传递要在PHP文件中使用的参数数组???除了GET请求URL之外?是的,您可以向IO请求的配置对象添加一个
data
属性,该属性向服务器发送参数。你应该读书。
Y.io(url, {
  on: {
    success: function (id, response) {
      // ...
    }
  }
});