日期:2014-05-17  浏览次数:20628 次

请问一下这段jquery ajax验证提交的代码为啥死活不让提交了呢。
我想返回true时候 提交成功 
返回false 提交嗯扭失效 
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>My JSP 'index.jsp' starting page</title>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript">
$(function() {
$('#sum').click(function() {
var res = true;
$.ajax( {
type : 'post',
url : 'logins.action',
data : {
'username' : $('#username').val(),
'password' : $('#password').val()
},
async : false,
success : function(returnType) {
if (returnType == '正确') {
alert(returnType);
res = true;
} else {
alert(returnType);
res = false;
}
},
datatype : 'text'
})
return res;
});
});
</script>
</head>
<body>
<form action="login.action">
登录:
<br />
姓名:
<input type="text" name="username" id="username" />
<br />
密码:
<input type="password" name="password" id="password" />
<br />
<input type="submit" value="验证" id="sum" />
</form>
</body>
</html>

------解决方案--------------------
  
success : function(returnType) {                     if (returnType == '正确') {                         alert(returnType);                         res = true;                     } else {                         alert(returnType);                         res = false;                     }                 },                 datatype : 'text'
你这个代码在这里有点问题,你的后台java代码使用的是struts2把。ajax验证,
在你的代码中,你的返回类型为text,那么 你要获取struts的数值,比如你的struts代码中是形如这样,{"returnType","正确"};
 那么你的js代码应该形如这样写。
 success : function(data) {     var flag = $.evalJSON(data).resultType;                if (flag == '正确')

另一种解决方法,也是我推荐的一种,ajax返回类