因為它的機制是動態產生一個 textbox,所以驗證也必須鞍在這個 textbox 上
$(function () {
$("#drpLst").combobox($("#drpLst").combobox({
create: function (event, ui) {
// 賦予自動完成 textbox 驗證能力
$(this).next().find('input').attr('id', $(this).attr('id') + "_combobox");
$(this).next().find('input').attr('name', $(this).attr('id') + "_combobox");
$(this).next().find('input').addClass('required');
$("#ElementIDError").attr('id', 'ElementID_comboboxError');
}
}));
});
這樣就能驗證了,不過還有個小問題,就是錯誤訊息會卡在輸入方塊跟下拉鈕之間
所以我們需要改變錯誤訊息的位置
$('#form1').validate({
errorElement: 'div',
errorLabelContainer: '.errorTxt'
});
然後在你希望顯示錯誤訊息清單的地放放上
<div class="errorTxt"></div>補CSS給這個 class,即可得到首圖的結果。
ref: combobox validation、location of error msg1、location of error msg2
example: GitHub


沒有留言:
張貼留言