ajax()不執行success也不執行error的分析和解決
阿新 • • 發佈:2018-12-12
呼叫後臺新增功能,data能夠正常傳入後臺,資料庫成功更新,但是ajax()既不進入success,也不進入error。
- 檢查ajax中datatype與後臺返回值資料型別。
//ajax資料 $.ajax({ type:"POST", datatype:"json",//資料型別為json url:"addNewService", data:{ "serviceName":serviceName, "sendIpAddrStr":sendIpAddrStr, "recvIpAddrStr":recvIpAddrStr, "recvPortType":recvPortType, "recvPort":recvPort }, //後臺程式碼 System.out.println("資料庫更新條數"+iii); jsonObjectResult.put("msg", iii); return jsonObjectResult;
- 檢查是否進入error:
success:function(data){ if (1 == data.msg) { location.reload(true); alert('新增資料成功!'); } else { alert('新增資料失敗!'); } }, error:function(data){ console.log("msg",data.msg); console.log("flag",data.flag); location.reload(true); }
執行發現未進入error,但是資料庫新增成功。
- 經驗證發現是在ajax的非同步傳輸還未完成驗證,頁面已進行重新整理。由於頁面用的是layui框架(基於bootstrap),bootstrap框架下form表單中的按鈕被點選後會自動重新整理頁面。
- 解決方案,將form改為div即可,頁面樣式不會發生變化。