/**
* 用于解析后台传来的有特殊字符的JSON串,解决解析出现200错误的情况 * @param url * @param requestData 参数 * @param callback 回调函数 * @param failCallback 出错时的回调 */ var baoAjax = function (url,requestData,callback,failCallback) { $.ajax({ type : "post", url : url, dataType:"json", data:requestData, success : function(data) { if($.isFunction(callback)){ callback(data); } }, error:function(xhr, textStatus, errorThrown){ console.log(xhr); if(textStatus=="parsererror"){ var jsonString = xhr.responseText; //解析异常 try{ callback(JSON.parse(jsonString)); }catch (e){ try{ var data = (new Function("return " + jsonString))(); callback(data); }catch(e2){ console.error("baoAjax解析数据异常!"+url); } } }else{ if($.isFunction(failCallback)){ failCallback(); } } } }); }