2010-06-22 59 views
1

嘗試發佈此之前,但它沒有通過(我認爲),所以如果這是一個轉發請忽略。不過,我昨天問了一個問題,並從這裏得到了很好的幫助。我有一個用戶帳戶頁面,用戶可以在其中編輯他們的帳戶信息。現在,他們並不總是改變他們的密碼。因此,只有當新密碼框有輸入時,我才需要當前密碼框。我還申請了等於:以便我可以使用新密碼框檢查確認密碼框。這一切都工作。但是,現在我想將一些規則應用於新密碼框。像密碼必須至少6個字符長,包含一個字母和一個數字,不包含其他字符。有人可以指點我正確的方向嗎?jquery密碼規則

這裏是一些我對於分鐘長度的代碼:

$(<%= NewPass1.GetName() %>").rules("add", { 
    minlength: 6, 
SOME REGEX HERE? 
+0

需要考慮的重要問題:在服務器端更好地驗證:-) 否則我將能夠向您發送未驗證的數據(如果我禁用JS例如) – helle 2010-06-22 14:40:51

+0

@helle是正確的,雖然它不傷害以驗證兩次。在客戶端執行一次即可向用戶提供即時反饋,而不是等待幾秒鐘來查看失敗消息。特別是如果他們有一個緩慢的連接。 – 2010-06-22 14:41:51

+0

我在服務器端驗證。這只是用戶接口的東西。 – Tom 2010-06-22 14:49:16

回答

3

試試這個功能。它會檢查密碼是否爲字母數字,並且至少有6個字符長。它還檢查它是否至少包含一位數字和一個字母。

function isValid(input) 
{ 
    var reg = /^[^%\s]{6,}$/; 
    var reg2 = /[a-zA-Z]/; 
    var reg3 = /[0-9]/; 
    return reg.test(input) && reg2.test(input) && reg3.test(input); 
} 

我假設您使用的是Validation插件。使用自定義的方法與插件,試試這個功能:http://docs.jquery.com/Plugins/Validation/Validator/addMethod#namemethodmessage

編輯:

編輯爲允許除空格和「%」的所有字符。

+0

如果我想要包含符號......如果除了空格和%符號,每件事都是合法的 – Tom 2010-06-22 14:39:47

+0

嘗試我的新編輯 – 2010-06-22 14:42:14

+0

聽起來不錯,現在我只是看着如何使用addmethod函數。這是我第一次使用javascript和jquery – Tom 2010-06-22 14:48:56