0
我試圖根據正則表達式驗證jQuery.validate() plugin的字段。如果答案看起來像「468.47」或「123.45」的「999.12」,那麼Ik需要驗證。所以[3位] [點] [2位]。如何創建正則表達式動態設置jQuery驗證模式選項
我動態地設置.validate() - 選項if語句,像這樣:
if (true) {
$('#registerForm').validate().settings.rules.ssn.pattern = '[0-9]{3}.[0-9]{2}$';
}
else {
$('#registerForm').validate().settings.rules.ssn.pattern = '';
}
當我進入.i.e。 123.45它不驗證。即使在我嘗試時也沒有
$('#registerForm').validate().element('#registerPassP');
在控制檯中。
我包括所有這些JS腳本的:
- jquery.validate.min.js
- 附加methods.min.js
- pattern.js
或許真的正則表達式錯誤?
謝謝大家!
不回答你的問題,但要注意,'.'在你的正則表達式匹配任何字符(除換行符)。它應該被轉義爲匹配點 - '\ .'。 – ClasG
一個thougt - 在JS中,一個正則表達式被''包圍 - '你試過了嗎?/^[0-9] {3} \\。[0-9] {2} $ /'而不是''[ 0-9] {3}。[0-9] {2} $「'? – ClasG
一個好主意,雖然我不認爲他需要雙倍逃脫點'\\ .'應該是'\ .'? – sweaver2112