您好,登錄后才能下訂單哦!
本篇文章和大家了解一下jquery中$.post方法不執行怎么處理。有一定的參考價值,有需要的朋友可以參考一下,希望對大家有所幫助。
jquery $.post方法不執行的解決方法:設置返回的數據為json數據,代碼為【out.print(JSONObject.fromObject(result));】。
該方法適用于所有品牌電腦
jquery $.post方法不執行的解決方法:
關于JQuery的post回調函數不執行問題
前端的post回調函數就是不執行, 設置完斷點debug還是直接跳過不執行
錯誤演示 :
后臺代碼
@RequestMapping(value = "login") public void CheckUserAccount(@RequestParam("account")String account, HttpServletResponse response) throws IOException{ JSONObject json_account = JSONObject.fromObject(account); int username = (Integer)json_account.get("username"); String password = json_account.getString("password"); logger.info("username = " + username + " password = " + password); int status; status = checkUserAccountService.IsCorrect(username, password); Map<String, Object> result = new HashMap<String, Object>(); Map<String, String> info_json = new HashMap<String, String>(); if(status == 1){ info_json.put("status", "success"); }else if(status == 0){ info_json.put("status", "errorpassword"); }else{ info_json.put("status", "noexitaccount"); } result.put("info", info_json); JSONObject json_object = JSONObject.fromObject(result); response.setContentType("text/json; charset=utf-8"); response.setHeader("Cache-Control", "no-cache"); PrintWriter out = response.getWriter(); out.print(result); out.flush(); out.close(); logger.info("驗證結果是" + ((Map<String, String>)(result.get("info"))).get("status"));
重點的一句是:
response.setContentType("text/json; charset=utf-8");
此處設置返回的數據為json數據, 但是out.print(result);這里輸出的是一個Map, so 前端識別不出任何數據, 結果回調函數直接跳過不執行(因為回調函數只執行json數據)
正確示范 :
改成: out.print(JSONObject.fromObject(result));
就可以了。
以上就是jquery中$.post方法不執行怎么處理的簡略介紹,當然詳細使用上面的不同還得要大家自己使用過才領會。如果想了解更多,歡迎關注億速云行業資訊頻道哦!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。