Servlet 與 Ajax 交互一直報(bào)status=parsererror的解決辦法
原因:servlet 返回的數(shù)據(jù)不是 Json 格式
1、JS代碼為:
var jsonStr = {'clusterNum':2,'iterationNum':3,'runTimes':4}; $.ajax({ type: "post", //http://172.22.12.135:9000/Json.json url: "/LSHome/LSHome", dataType : 'json', data : jsonStr, success: function(data,textStatus){ if(textStatus=="success"){ alert("創(chuàng)建任務(wù)操作成功"+data); } }, error: function(xhr,status,errMsg){ alert("創(chuàng)建任務(wù)操作失敗!"); } });
2、注意上面的 url 為 /LSHome/LSHome,(項(xiàng)目名稱為L(zhǎng)SHome)所以在 web.xml 文件中,配置 Servlet 如下:
<servlet> <servlet-name>LSHomeServlet</servlet-name> <servlet-class>com.ys.servlet.LSHomeServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>LSHomeServlet</servlet-name> <url-pattern>/LSHome</url-pattern>
3、Servlet 中代碼為:
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { //聚類數(shù)量 String clusterNum = request.getParameter("clusterNum"); //迭代次數(shù) String iterationNum = request.getParameter("iterationNum"); //運(yùn)行次數(shù) String runTimes = request.getParameter("runTimes"); System.out.println("聚類數(shù)量為:"+clusterNum+"---迭代次數(shù):"+iterationNum+"---運(yùn)行次數(shù):"+runTimes); PrintWriter out = response.getWriter(); out.write("success"); out.close(); }
4、結(jié)果是一直都是進(jìn)入到 ajax 方法里面的 error,而且status=parsererror
xhr = Object {readyState: 4, responseText: "success", status: 200, statusText: "OK"}
5、解決辦法:
原因是通過(guò) response 對(duì)象返回的數(shù)據(jù)格式不正確,正確方法
PrintWriter out = response.getWriter(); String jsonStr = "{\"success\":\"OK\"}"; out.write(jsonStr);
可以將返回值拼湊成 JSON 數(shù)據(jù)格式,然后會(huì)不會(huì)報(bào)status=parsererror
以上所述是小編給大家介紹的Servlet 與 Ajax 交互一直報(bào)status=parsererror的解決辦法,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
- Ajax跨域問(wèn)題及解決方案(jsonp,cors)
- Springboot解決ajax+自定義headers的跨域請(qǐng)求問(wèn)題
- 淺談Koa2框架利用CORS完成跨域ajax請(qǐng)求
- php獲取ajax的headers方法與內(nèi)容實(shí)例
- Javaweb使用cors完成跨域ajax數(shù)據(jù)交互
- jQuery.Form實(shí)現(xiàn)Ajax上傳文件同時(shí)設(shè)置headers的方法
- 解決spring mvc 返回json數(shù)據(jù)到ajax報(bào)錯(cuò)parseerror問(wèn)題
- 完美解決ajax跨域請(qǐng)求下parsererror的錯(cuò)誤
- jQuery.ajax 跨域請(qǐng)求webapi設(shè)置headers的解決方案
- Jax-rs規(guī)范REST接口文件上傳代碼實(shí)例
相關(guān)文章
ajax獲取php頁(yè)面的返回參數(shù),控件賦值的方法
下面小編就為大家?guī)?lái)一篇ajax獲取php頁(yè)面的返回參數(shù),控件賦值的方法。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2016-10-10Ajax實(shí)現(xiàn)phpcms 點(diǎn)贊功能實(shí)例代碼
這篇文章主要介紹了Ajax實(shí)現(xiàn)phpcms 點(diǎn)贊功能實(shí)例代碼,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下2017-03-03ThinkPHP5 通過(guò)ajax插入圖片并實(shí)時(shí)顯示(完整代碼)
這篇文章主要介紹了ThinkPHP5 通過(guò)ajax插入圖片并實(shí)時(shí)顯示功能,本文給大家分享網(wǎng)站代碼,代碼簡(jiǎn)單易懂,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-12-12Ajax刪除數(shù)據(jù)與查看數(shù)據(jù)操作
這篇文章主要介紹了Ajax刪除數(shù)據(jù)與查看數(shù)據(jù)操作,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下2017-03-03簡(jiǎn)單實(shí)現(xiàn)Ajax無(wú)刷新分頁(yè)效果
這篇文章主要為大家詳細(xì)介紹了簡(jiǎn)單實(shí)現(xiàn)Ajax無(wú)刷新分頁(yè)效果的代碼,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-05-05使用ajax技術(shù)實(shí)現(xiàn)txt彈出在頁(yè)面上的方法
下面小編就為大家?guī)?lái)一篇使用ajax技術(shù)實(shí)現(xiàn)txt彈出在頁(yè)面上的方法。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2016-08-08AJax與Jsonp跨域訪問(wèn)問(wèn)題小結(jié)
本文給大家匯總介紹了JavaScript的AJax,JQuery的AJax以及利用jsonp實(shí)現(xiàn)跨域訪問(wèn)的問(wèn)題,非常的細(xì)致全面,有需要的小伙伴可以參考下。2015-12-12Ajax請(qǐng)求響應(yīng)中用window.open打開(kāi)新窗口被攔截的解決方法
ajax 異步請(qǐng)求成功后需要新開(kāi)窗口打開(kāi) url,使用的是 window.open() 方法,但是會(huì)被瀏覽器給攔截,怎么解決呢,下面小編給大家解答下2016-08-08