jquery.form.js上传出现$.handleError 、以及 $.httpData错误
或表单提交不了:
原因:
首先,jquery1.4以后的版本不在支持这两个方法。
解决方法:
添加
(在jquery.form.js)中添加如下方法:
$.httpData=function( xhr, type, s ) {
var ct = xhr.getResponseHeader( 'content-type'), xml = type == 'xml' || !type && ct && ct.indexOf( 'xml' ) >=0, data = xml ? xhr.responseXML: xhr.responseText; if ( xml && data.documentElement.tagName == 'parsererror' )
throw 'parsererror' ; if ( s && s.dataFilter ) data = s.dataFilter( data, type );if ( typeof data === 'string' ){if ( type == 'script' ) jQuery.globalEval( data ); if ( type == 'json' )
data = window[ "eval" ]( '(' + data + ')' ); } return data; };
$.handleError= function (s, xhr, status, e) {
if (s.error) {
s.error.call(s.context || s, xhr, status, e); }
if (s.global) {
(s.context ? jQuery(s.context) : jQuery.event).trigger('ajaxError', [xhr, s, e]); }
}
这两个函数 即可。
另外:高版本的js放在最前面,低版本的应放在后面。表单提交不了。
submitform_validator.js 中应把 script:[websiteurl] 修改成 script[websiteurl]
转载于:https://blog.51cto.com/haihuiwei/1611806