我想驗證使用jQuery,Ajax和PHP的HTML表單。我在jquery中寫了這個函數,它使用ajax post request來檢查用戶名的可用性。但問題是它總是返回一個false。我是新來的jQuery和JavaScript。我已經嘗試了很多,但我無法弄清楚問題所在。請幫忙。javascript函數總是返回false
function isvalid_username()
{
var username=$('#username').val();
var option=false;
if(username == "")
{
$('#username').removeClass('valid').addClass('invalid');
$('#username_feedback').addClass('error').html("Please choose a username!!");
option=false;
}
else if(username.length < 4)
{
$('#username').removeClass('valid').addClass('invalid');
$('#username_feedback').addClass('error').html("Your username must be atleast 4 characters.");
option=false;
}
else
{
$.post('php/check_username_avail.php',{ username : username },function(data){
if(data == "false")
{
$('#username').removeClass('valid').addClass('invalid');
$('#username_feedback').addClass('error').html("Sorry! That username is already taken. Try a different one.");
option= false;
}
else if(data == "true")
{
$('#username').removeClass('invalid').addClass('valid');
$('#username_feedback').html("");
alert('Now it should return true');
option=true;
}
else
{
$('#username').removeClass('valid').addClass('invalid');
$('#username_feedback').addClass('error').html(data);
option=false;
}
}).error(function(){
alert("An error occurred. Unable to validate username");
});
}
return option;
}
編輯:我讀過other post。但我仍然沒有找到驗證表單的方法。我想用這與我的代碼提交處理函數:
$('#signup_form').submit(function(event)
{
if(isvalid_first_name() && isvalid_username() && isvalid_email() && isvalid_password())
{
alert('Submitting the form');
}
else
{
event.preventDefault();
$('#submit_feedback').html("Please correct the above problems first");
}
});
如果不能做到這樣,那我應該用什麼樣的技術,來驗證在客戶方的形式?
僅供參考,錯誤'已棄用,使用'失敗' –
好的!完成。也理解我的代碼的問題。但沒有得到解決方案。 – Raman
如果我使用承諾,那麼我應該如何更改我的處理程序,以便表單驗證不受影響? – Raman