2011-01-24 21 views
0

如何才能使用ajax調用來驗證表單字段,其餘的字段使用客戶機驗證? (我使用jQuery + jQuery驗證插件http://bassistance.de/jquery-plugins/jquery-plugin-validation/(Jquery Validate Plugin)如何將1個表單字段用ajax調用進行驗證,其餘字段用客戶機驗證進行驗證?

的情況:

register.html

<form id="register" name="register"> 
firstname<input id="username" name="username"/> 
user<input id="user" name="user"/> 
phone<input id="phone" name="phone"/> 
</form> 

<script src="../lib/jquery.js" type="text/javascript"></script> 
<script src="../jquery.validate.js" type="text/javascript"></script> 
$('#register').validate(
{ 
rules: { 
     firstname: "required", 
     phone: "required" 
    } 
}); 

user_exist.php

if (userExist($_REQUEST['user']){ 
    echo 'success'; 
} 
else{ 
    echo 'please choose another user' 
} 

我知道如何只驗證名字和電話,但用戶名稱在提交之前,我應該通過服務器驗證我沒有。

請幫助我做服務器用戶字段的ajax驗證。 (我簡化代碼) 感謝

+0

IMO做一個單獨的呼叫驗證是非常低效的。只需通過AJAX提交表單,然後返回錯誤並像失敗的驗證一樣處理它們(取決於當然的錯誤)。但是,這不適用於包含上傳字段的表單。在這種情況下,單獨的驗證請求是有意義的。 – ThiefMaster 2011-01-24 23:18:57

回答

1

有在演示頁面的確切例如:
http://jquery.bassistance.de/validate/demo/milk/

username: { 
    required: true, 
    minlength: 2, 
    remote: "users.php" 
}, 

只記得echo "true";成功在您的服務器端

+0

謝謝! 1.如何能夠服務器消息顯示失敗2.我試圖看到你的例子的服務器代碼,但它不適合我(Ubuntu的Firefox) – Yosef 2011-01-25 11:06:23