發(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 , // 組件添加屬性:讓關閉按鈕消失
//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("進來了");
},
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());
}
}
點擊登錄時:
解決辦法:彈出error信息一般有兩種可能:
第一種:url錯誤,后臺直接得不到值
可以用火狐的firebug查看:如果響應了信息,則不是這個問題,那么就有可能是第二種情況:
返回數(shù)據(jù)類型錯誤:
在我這個例子中,返回的數(shù)據(jù)無意中打印了兩次,這兩句刪去一句就好了:
out.print(json.toString());
response.getWriter().write(json.toString());
造成了錯誤。這時在firebug顯示的信息是:
以上就是為大家分析的用ajax返回驗證的時候總是彈出error的原因,希望對大家解決此類問題有所幫助。
您可能感興趣的文章:- 詳解ajax的data參數(shù)錯誤導致頁面崩潰
- 快速解決ajax請求出錯狀態(tài)碼為0的問題
- PHP 中使用ajax時一些常見錯誤總結整理
- 完美解決ajax跨域請求下parsererror的錯誤
- ajax跨域訪問報錯501的解決方法
- jQuery中ajax錯誤調試分析
- Ajax向后臺傳json格式的數(shù)據(jù)出現(xiàn)415錯誤的原因分析及解決方法
- Ajax犯的錯誤處理方法
- js ajaxfileupload.js上傳報錯的解決方法
- Jquery Ajax Error 調試錯誤的技巧
- django使用ajax post數(shù)據(jù)出現(xiàn)403錯誤如何解決
- Ajax報錯400的參考解決辦法