-1
我想控制即使用戶正確填寫表單。所以,我將我的提交按鈕中的JavaScript控件添加到click事件中。在我的表單中,有很多asp.net控件,我也有一個安全代碼。所以,我寫了一個web方法工作順利。但是,如果用戶錯誤地填寫了安全碼字段,我的「返回false」代碼不起作用,並且頁面回覆。下面是我的javascript代碼:javascript「return false」不起作用
function checkFacebookRegister() {
var error = "";
var username = $('#<%=tbUsername.ClientID%>').val();
pattern = new RegExp(/^[0-9a-zA-Z-_]*$/);
if (username.length >= 4 && pattern.test(username)) {
jQuery.ajax({
method: 'GET',
url: 'ajax/checkUsername.aspx',
data: "username=" + username
}).done(function (data) {
if (data != "true") {
error = "Seçtiğiniz kullanıcı adı uygun değil.";
$('#errorDivision').show(1);
$('#error').html(error);
return false;
}
});
} else {
error = "Seçtiğiniz kullanıcı adı minimum 4 karakter olmalı, Türkçe karakter bulunmayan ve noktalama işaretlerinden sadece alt tire içerecek şekilde olmalıdır.";
$('#errorDivision').show(1);
$('#error').html(error);
return false;
}
var faculty = $('#<%=ddlFaculty.ClientID%>').val();
if (faculty == "0") {
error = "Şehir, Üniversite ve Fakülte bilgileri eksiksiz girilmelidir.";
$('#errorDivision').show(1);
$('#error').html(error);
return false;
}
var password = $('#<%=tbPassword.ClientID%>').val();
var passwordConf = $('#<%=tbPasswordConf.ClientID%>').val();
if (password.length < 6) {
error = "Seçtiğiniz parola en az 6 karakter olmalıdır.";
$('#errorDivision').show(1);
$('#error').html(error);
return false;
} else if (password != passwordConf) {
error = "Parolanız tekrarıyla uyuşmamaktadır.";
$('#errorDivision').show(1);
$('#error').html(error);
return false;
}
var securityCode = $('#<%=tbSecurityCode.ClientID%>').val();
**PageMethods.checkSecurityCode(securityCode, checkSecurityCallBackSuccess, checkSecurityCallBackFailed);**
if (!$('#<%=cbUserAgreement.ClientID%>').is(':checked')) {
error = "Üyelik Sözleşmesi' ni onaylamanız gerekmektedir.";
$('#errorDivision').show(1);
$('#error').html(error);
return false;
}
}
function checkSecurityCallBackSuccess(response)
{
if (response == false)
{
error = "Güvenlik kodubu yanlış girdiniz.";
$('#errorDivision').show(1);
$('#error').html(error);
return false;
}
}
function checkSecurityCallBackFailed(error) {
alert(error);
error = "Belirlenemeyen bir hata oluştu.";
$('#errorDivision').show(1);
$('#error').html(error);
return false;
}
AJAX是**異步**,這意味着*'checkFacebookRegister'完成後'done'回調將發生*。 – zzzzBov
AJAX沒有問題。在這一行之後,我調用名爲** checkSecurityCode **的PageMethods。在這一行中,問題發生了 –
問題是,名爲** checkSecurityCode **的頁方法返回_CallBackFailed_,但refurn false不起作用 –