2014-02-11 71 views
1

我知道這可能以前已經問過,但我仍然無法找到我需要的解決方案。 我需要使電話號碼字段可選(我知道我可以不使用Required關鍵字),但如果用戶確實輸入了數據,我仍然需要jQuery來處理客戶端。我已經試過各種排列和我的最後一次嘗試是這樣的:可選驗證,但需要輸入

$("#telephone").rules("add", { 
      required: false, 
      pattern: "^\+?\d{10,14}|$" 

     }); 

我可能路要走,但如果有人能抽出點我在正確的方向將恢​​復我的信心在人類的時間; )

+0

http://stackoverflow.com/questions/3526236/jquery-validator-plug-in-validate-optional-field一個解決方案:) – superpuccio

+0

也許這只是我是一個小白,但我可以似乎沒有得到上面給出的例子工作。任何其他的指針都會被感激地收到。謝謝 – gettingThereSlowly

+0

http://james.padolsey.com/javascript/regular-expressions-in-javascript/請閱讀此 –

回答

1

請去Jquery驗證插件。 你可以找到類似的問題: How to use jQuery Validator custom method on optional field with defaultValue?

Running Example

版權所有安德魯·惠特克的小提琴。這裏

$.validator.addMethod('phone', function (value, element) { 
if (value != element.defaultValue) { 
    return this.optional(element) || /^[01]?[- .]?\(?[2-9]\d{2}\)?[- .]?\d{3}[- .]?\d{4}$/.test(value); 
} 
return true; 
}, 'This is not a valid number'); 

$("#myForm").validate(); 
+0

感謝您的迴應,但這並沒有解決我的問題。我是一名初級開發人員,試圖追蹤已經存在的應用程序中的驗證錯誤。我現在發現我需要一個特定的正則表達式,它允許一個空字段或驗證該字段是否爲空。我用這個正則表達式解決了這個問題^ $ |^\ +?\ d {10,14} $其中正則表達式允許空^ $或驗證|^\ +?\ d {10,14} $ 10到14之間的數字。感謝您的輸入,雖然 – gettingThereSlowly

+0

@gettingThere很快就沒有問題,歡迎您。 – franchez