【发布时间】:2013-11-05 16:45:15
【问题描述】:
我有一个按钮可以与服务器进行一些通信,以检查输入的值(通过输入框)是否已经存在。代码如下:
$("#button").click(function () {
var exists = false;
var name = $("#name").val();
socket.emit("check", name);
socket.on("checkReturn", function (data) {
exists = data.result;
});
if (exists) {
console.log("exists")
} else {
if (name.length > 0) {
socket.emit("create", name);
}
}
});
});
问题在于checkReturn 调用是异步的,因此代码继续执行而不实际等待结果。如何确保 checkReturn 首先完成,然后才执行其余代码?
【问题讨论】:
标签: javascript jquery node.js socket.io promise