gpt4 book ai didi

jquery - jquery中变量的问题

转载 作者:行者123 更新时间:2023-12-01 06:41:41 24 4
gpt4 key购买 nike

我不明白为什么如果输入数据库中已经存在的用户名,我没有收到“用户名已存在”消息。

如果服务器中的用户名,则它将返回值“1”,否则为空,尽管根据用户名是否存在成功从服务器获取值,并将该值分配给变量“x” ,当我传递已经存在的用户名时,我无法收到消息。我可以知道吗?

$(document).ready(pageInit);
function pageInit() {
$('#1').bind('blur',go);
}
function go() {
var value = $('#1').val();
var x = 0;
$.post('just.do',{username:value},function(data){
x = data;

}
);

if(x) {
$('#para').show();
$('#para').html("Username already exits");
return false;
}
else {
$('#para').hide();
return true;
}
};

编辑:这就是我在 servlet 中的 post 请求中所做的事情:

String user1 = request.getParameter("username");  
if(user != null) {
String query = "Select * from users where user_name="+"\""+user+"\"";
b = db.doExecuteQuery(stmt,query);
if(b) {
out.write("1");
}

}

最佳答案

您的代码 if(x) ... 在 http 请求完成之前执行,因此,当该部分代码被执行时,x 将永远不会被设置已达到。

您想要使用回调:

$.post('just.do',{username:value},function(data) {
receivedResult(data);
});

...

function receivedResult(x) {
if(x) {
...
} else {
...
}
}

关于jquery - jquery中变量的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2904482/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com