回头看看项目,想要使用ajax来验证用户账号密码,之前是使用jquery ajax的,但是ajax默认异步的,搞到没法同步获得内容,
途中有想过使用while死循环来等待ajxa回值,但是不是很好。后面看了一篇文章,原来只用加一个参数就可以了anync。
以下是我的javascript
$(function(){
$("#login_form").submit(
function(){
var checkText1 = $("#username").val();
var checkText2 = $("#password").val();
var flag;
$.ajax({
type : "post",
url : "login.action",
data : {
'user.name' : checkText1,
'user.password' : checkText2
},
dataType : "text",
async:false,//加上这个,使之同步。
success : function(json) {
var obj = $.parseJSON(json);
flag = obj;
},
error : function(json) {
alert("请重试!");
}
});
if(!flag){
art.dialog('账号密码有误,请重新输入!');
}
return flag;
}
);
});
后面查了下jquery 1.8的api,也能找到。看来要多点查查api.没事多看看
asyncBoolean
(默认: true) 默认设置下,所有请求均为异步请求。如果需要发送同步请求,请将此选项设置为 false。注意,同步请求将锁住浏览器,用户其它操作必须等待请求完成才可以执行。