2015-12-10 20 views
0

這可能有點混亂,但我會盡我所能解釋清楚。沒有看到jqueryvalidation和msdropdown的錯誤消息

我有一個twitter引導窗體,收集信息和它使用jqueryvalidation強制執行窗體上的特定規則。到目前爲止,一切都在一起玩。但是,在客戶端請求使用msdropdown msdropdown格式化選擇下拉框時,通常應在所需下拉列表中顯示的錯誤是隱藏的。表單實施仍然存在,但您無法看到標準「此字段是必填」的消息。使用Chrome的網絡工具,我可以看到該消息,並且看到它落在了下拉菜單的後面。

小提琴例如:Fiddle Example

我猜有可能是一種方法來改變這種情況下的錯誤塊的位置,但我不知道該怎麼做。

$(function() { 

    $.validator.setDefaults({ 
    errorClass: 'help-block', 
    highlight: function(element) { 
     $(element) 
     .closest('.form-group') 
     .addClass('has-error'); 
    }, 
    unhighlight: function(element) { 
     $(element) 
     .closest('.form-group') 
     .removeClass('has-error'); 
    }, 
    errorPlacement: function (error, element) { 
     if (element.prop('type') === 'radio') { 
     error.insertAfter(element.parent()); 
     } else { 
     error.insertAfter(element); 
     } 
    } 
    }); 

錯誤塊的示例。

在此先感謝!

更新:所以,我開始與錯誤塊我能得到一個錯誤信息也出現遺憾的小提琴是錯誤的:(打轉轉:

errorPlacement: function (error, element) { 
    if (element.prop('type') === 'radio' || element.attr("name") == "newAssignment") { 
    error.insertAfter(element.parent()); 
    } else { 
    error.insertAfter(element); 
    } 
} 

現在我得到錯誤信息出現上面的選擇框,但之後我做出選擇,錯誤信息保持

回答

0

好了,所以我有這個在那裏將至少工作

增加:。

|| element.attr("name") == "newAssignment" 

上面列出的幫助我與錯誤消息的位置。

我也得到了通過評估時作出選擇的元素去掉錯誤消息:

$("#addNewAssignment").validate().element("#newAssignment"); 
相關問題