2014-07-03 20 views
0

我正在尋找一個解決方案,我可以爲給定的輸入字段有兩個相同錯誤消息的實例。jQuery驗證 - 單個表單元素的同一錯誤的多個實例

更具體地說,我想在表單元素之後插入錯誤消息,並將其附加到該表單元素的相對標籤元素。

爲了使事情更容易理解,這裏是一個jsfiddle example

看我怎麼有兩個自定義錯誤的展示位置:

errorPlacement: function (error, element) { 
    error.insertAfter(element); 
    $('#username_label').append(error); 
} 

然而,如果試圖驗證表單,你會看到錯誤消息出現在標籤元素只追加,並且沒有錯誤後輸入。

基本上,第二個陳述覆蓋了第一個陳述。

我該如何解決這個問題,併爲該輸入提供了兩條錯誤消息,當元素有效時都會被刪除,並且在元素無效時都會顯示這兩條錯誤消息?

+0

()'你應該避免使用'追加從這個插件的錯誤消息。它有可能使事情搞砸,使插件無法正確切換錯誤信息;那麼你最終會重複多次相同的錯誤信息。 – Sparky

回答

2

您需要clone錯誤元素。現在,您首先在輸入元素後面插入錯誤,然後在用戶名後面追加錯誤。

errorPlacement: function (error, element) { 
    error.insertAfter(element); 
    $('#username_label').append(error.clone()); 
} 

小提琴:http://jsfiddle.net/uzh38/11/

+0

太棒了!謝謝! – Smilyan