我有从系统中几个不同位置使用的功能。我现在需要的是返回true
或false
取决于函数是否成功完成。这是我到目前为止的例子:
function userUnlock(userID){
var fnResult;
$.ajax({
type: 'POST',
url: 'Application.cfc?method=removeLock',
data: {'userID':userID},
dataType: 'json'
}).done(function(obj){
if(obj.STATUS == 200){
fnResult = true;
}else{
fnResult = false;
}
}).fail(function(jqXHR, textStatus, errorThrown){
alert("Error: "+errorThrown);
});
return fnResult;
}
这是我的onClick功能:
$("#unlockBtn").on("click", function(){
var userID = $.trim($("#userID").val());
if(userID){
console.log(userUnlock(userID));
$("#unlockBtn").prop("disabled",true);
$('#searchMsg').addClass("success").show().text("User is unlocked.").delay(3000).fadeOut('slow').queue(function(){
$(this).removeClass("success").dequeue();
$("#unlockBtn").css("display","none");
});
}else{
$('#searchMsg').addClass("error").show().text("Error.").delay(3000).fadeOut('slow').queue(function(){
$(this).removeClass("error").dequeue();
});
}
});
在我的onClick函数console.log()
中返回undefined。我不确定为什么会这样,因为我返回了布尔值变量。此外,我想知道是否有办法防止多个请求onClick。例如,如果用户偶然点击了几次。一种方法是禁用按钮属性,我这样做但我想确保我的功能可以防止多个请求。如果有人能提供一些很棒的例子。谢谢。