過濾器本身是很容易的:jQuery的自定義過濾器不能正常工作
$.expr[':'].valid = function(a) {
var phone = a.value.replace(/\D/g,''),
phonesub = phone.substr(0, 2);
return (phonesub == '79' || phonesub == '89') && phone.length == 11
}
我只是想檢查是否phone
長度我們11,並將其與79
或89
開始。但是:
$(":valid")
[<input type="text" id="phone1" name="phone1" value>]
很明顯,值是「」。
爲什麼我的過濾器不起作用?
順便說一句,在同一時間,對DOM的另一個輸入:
<input type="text" id="phone2" name="phone2" value="" disabled="">
和它沒有得到通過過濾器匹配。它受disabled
的影響?
讓我們改變它的值:
$("#phone2")
[<input type="text" id="phone2" name="phone2" value disabled>]
$("#phone2").val("79111111111")
[<input type="text" id="phone2" name="phone2" value disabled>]
$("#phone2").val()
"79111111111"
$(":valid")
[<input type="text" id="phone1" name="phone1" value>]
,我渴望
Muchos gracies,Arturka :)這就是答案。 – Nemoden