使用 result = eval(" ("+data+") ");時報如下錯誤
錯誤: SyntaxError: missing ] after element list
解決方案:不使用eval轉,而直接使用data。
原因:
$.ajax( {
type : "post",
dataType : "json", //這裏已經定義數據格式
jquery調用時會檢測到,從而直接把返回格式當做json處理,所以再轉化會報錯。
如下:
$.ajax({
type: "POST",
url: "${pageContext.request.contextPath}/s/***/delData",
data: {"id":id},
dataType: "json",
success: function(data){
if(data){
/* var data =eval("(" + data+ ")");
var data1 = data;
var data= JSON&&JSON.parse(JSON.stringify(data1))||jQuery.parseJSON(data1); */
var r = data.result;
if(r =='succ'){
$.messager.alert('溫馨提示','對象刪除成功!');
}else{
$.messager.alert('溫馨提示','刪除失敗,請聯繫管理員!');
}
}
},
error: function (msg) {}
});
可以註釋掉 轉換的那段代碼,因爲dataType已經指定了類型爲json。或者可以不指定類型,下面轉換成json解析也可以