我有一个使用 jqGrid 插件的数据网格,如果输入的电子邮件已经存在于数据库中,我希望有一个自定义错误消息。它将字段传递给 cfc 并返回此 json(这是 Firebug 窗口中显示的内容,因此该部分正常): {"USERDATA":{"MSG":"Email already exists in registration","TYPE":"错误”}}
所以基本上我正在尝试解析这个json并发出警报或对模态窗口做一些事情。我在这里找到了以下代码,它似乎可以很好地传递 json。下面是调用 GetResponseData 函数的添加选项部分:
{addCaption:"Add Recipient",closeOnEscape:true,savekey: [true,13],closeAfterEdit : false, errorTextFormat:commonError,width:"450"
,afterSubmit:function(response,postdata){ return GetResponseData(response); },reloadAfterSubmit:true,bottominfo:"Fields marked with (*) are required",top:"60",left:"70"}
添加了警报的功能以进行测试:
function GetResponseData (resp) {
var jtxt=(resp.responseText); //{"USERDATA":{"MSG":"Email already exists in registration","TYPE":"Error"}}
var jreturn=JSON.parse(jtxt)
alert(jreturn); //shows '[Object.object]'
var msg=jreturn.USERDATA[0].MSG;
var type=jreturn.USERDATA[0].TYPE;
alert(msg);
alert(type);
}
我已经尝试过 JSON.parse 和 eval() 都出现相同的错误:resp.USERDATA is undefined
感谢大家!我对 CF 和 jquery 还很陌生,感谢您的帮助。