2015-06-20 49 views
1

我發現了一些教程,其中展示瞭如何使用javascript爲表單的輸入字段設置自定義錯誤。一個例子如下:自定義有效性JQuery

document.getElementById('fname').setCustomValidity('Invalid'); 

但是,如果我嘗試使用jquery這似乎並不工作。一個例子如下:

$('#fname').setCustomValidity('Invalid'); 

我更喜歡使用jQuery所以任何人都告訴我,爲什麼這不工作,我怎麼可能做的JQuery一樣。

回答

3

setCustomValidity本地javascript方法。因此,獲得了原生javascript object,然後調用像

$('#fname').get(0).setCustomValidity('Invalid'); 

更新

那麼,爲什麼我沒有把獲得(0)時,我總是使用JQuery。你能解釋得到(0)如果可能嗎?

問題不在於您是否在使用jQuery。相反,問題在於你試圖調用原生javascript函數,不存在jQuery對象。這就是爲什麼使用get()會讓你的原生javascript DOM元素可以訪問javascript函數

+0

整潔。謝謝 – Tatenda

+0

@Tatenda,沒問題:) – AmmarCSE

+0

那麼爲什麼當我總是使用JQuery時,我不必把.get(0)你能解釋得到(0)如果可能嗎? – Tatenda

1

試試這個:

$('#fname')[0].setCustomValidity('Invalid'); 
+0

也可以。謝謝你 – Tatenda

+0

不適合我 – melvin