發(fā)一個簡單案例:
前臺:
%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> !DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> html> head> title>用戶登錄/title> script type="text/javascript" src="../js/jquery-easyui-1.3.5/jquery.min.js">/script> script type="text/javascript" src="../js/jquery-easyui-1.3.5/jquery.easyui.min.js">/script> link rel="stylesheet" href="../js/jquery-easyui-1.3.5/themes/default/easyui.css" type="text/css">/link> link rel="stylesheet" href="../js/jquery-easyui-1.3.5/themes/icon.css" type="text/css">/link> script type="text/javascript" src="../js/jquery-easyui-1.3.5/locale/easyui-lang-zh_CN.js">/script> meta http-equiv="content-type" content="text/html;charset=UTF-8" /> script type = "text/javascript" charset = "UTF-8"> $(function(){ var loginDialog; loginDialog = $('#loginDialog').dialog({ closable : false , // 組件添加屬性:讓關(guān)閉按鈕消失 //modal : true, //模式化窗口 buttons : [{ text:'注冊', handler:function(){ } }, { text:'登錄', handler:function(){ $.ajax({ url:'../servlet/Login_Do', data :{ name:$('#loginForm input[name=name]').val(), password:$('#loginForm input[name=password]').val() }, dataType:'json', success:function(r){ //var dataObj=eval("("+data+")"); alert("進(jìn)來了"); }, error:function(){ alert("失敗"); } }); //alert(data) } }] }); }); /script> /head> body style=”width:100%;height:100%;" > div id = "loginDialog" title = "用戶登錄" style = "width:250px;height:250px;" > form id = "loginForm" method = "post"> table> tr> th>用戶名 :/th> td>input type = "text" class = "easyui-validatebox" data-options="required:true" name = "name">br>/td> /tr> tr> th>密碼: /th> td> input type = "password" class = "easyui-validatebox" data-options="required:true" name = "password">br>/td>/td> /tr> /table> /form> /div> /body> /html>
后臺:
public class Login_Do extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { this.doPost(request, response); } public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { request.setCharacterEncoding("UTF-8"); response.setCharacterEncoding("UTF-8"); String name =request.getParameter("name"); String password = request.getParameter("password"); String js = "{\"name\":name,\"password\":password}"; PrintWriter out = response.getWriter(); JSONObject json = new JSONObject(); json.put("name",name); out.print(json.toString()); response.getWriter().write(json.toString()); } }
點(diǎn)擊登錄時:
解決辦法:彈出error信息一般有兩種可能:
第一種:url錯誤,后臺直接得不到值
可以用火狐的firebug查看:如果響應(yīng)了信息,則不是這個問題,那么就有可能是第二種情況:
返回數(shù)據(jù)類型錯誤:
在我這個例子中,返回的數(shù)據(jù)無意中打印了兩次,這兩句刪去一句就好了:
out.print(json.toString()); response.getWriter().write(json.toString());
造成了錯誤。這時在firebug顯示的信息是:
以上就是為大家分析的用ajax返回驗證的時候總是彈出error的原因,希望對大家解決此類問題有所幫助。
標(biāo)簽:佛山 股票 揭陽 咸寧 荊州 紅河 商洛 辛集
巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《解決ajax返回驗證的時候總是彈出error錯誤的方法》,本文關(guān)鍵詞 解決,ajax,返回,驗證,的,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。