当我升级到jQuery 1.5.1(或1.5)时,我站点中的所有ajax()
调用都会在错误选项函数中生成“parserror”。还有一个脚本错误
Uncaught SyntaxError: Unexpected token : jquery-1.5.1.min.js:16
该网站使用1.4.4运行无错误。这是来自其中一个ajax()调用的代码。
$.ajax({
url: '/CustomerGroup/Get',
type: 'POST',
contentType: 'application/json; charset=utf-8',
dataType: 'json',
success: function (grp) {
if (grp != null) {
clear();
group = grp;
load(grp);
} else{
showError(
'Customer Group',
'Whoops, error getting customer group information. Please contact support@myorg.com and include your username and date/time of the error.'
);
}
},
error: function (x,s,e) {
showError(
'Customer Group',
'Whoops, error getting customer group information. Please contact support@myorg.com and include your username and date/time of the error.'
);
}
});
经过大量研究后,我无法弄清楚错误发生的原因。任何见解都表示赞赏。
EDITED: 使用完整版的jQuery,我得到以下结果:
Uncaught SyntaxError: Unexpected token :
d.d.extend.globalEvaljquery-1.5.1.js:16
d.ajaxSetup.converters.text scriptjquery-1.5.1.js:16
bJjquery-1.5.1.js:16
wjquery-1.5.1.js:16
d.support.ajax.d.ajaxTransport.send.cjquery-1.5.1.js:16
和YES我使用的是jquery.validate。
答案 0 :(得分:8)
这是jQuery validation plugin中的错误。两天前我遇到了同样的问题。正如它在jQuery验证插件网站上所说,版本1.7 与jQuery 1.5.x不兼容。
您需要从Jörn的github页面安装newer version of validate。
答案 1 :(得分:4)
请参阅http://bugs.jquery.com/ticket/8302
并在代码中尝试dataType: 'text json'