問題1:
如下代碼:
<input type="hidden" name="productId"/>
$("#addForm").bootstrapValidator({fields: {productId: {validators: {notEmpty: {message: '請選擇一個商品'}}}}});這樣的配置并沒有在提交的時候?qū)Ρ韱卧豴roductId進(jìn)行驗(yàn)證,那是因?yàn)閎ootstrapValidator默認(rèn)配置對于“隱藏域(:hidden)、禁用域(:disabled)、那啥域(:not(visible))”是不進(jìn)行驗(yàn)證的。
解決方法:
$("#addForm").bootstrapValidator({//excluded:[":hidden",":disabled",":not(visible)"] ,//bootstrapValidator的默認(rèn)配置excluded:[":disabled"],//關(guān)鍵配置,表示只對于禁用域不進(jìn)行驗(yàn)證,其他的表單元素都要驗(yàn)證fields: {productId: {validators: {notEmpty: {message: '請選擇一個商品'}}}}});問題2:
我們往往會有這樣的需求,如下圖:

在選擇商品之后會在productName里面展示商品名稱給用戶看,而在productId這個隱藏域里面放一個商品的ID。
一般情況下這樣的操作是由程序來完成的,
$("input[name='productId']").val(data.productId);bootstrapValidator這個插件不能捕獲這樣的“程序賦值事件”,所以這里不能達(dá)到驗(yàn)證的效果,所以我們需要做一個小小的變通:
$("#addForm").bootstrapValidator({//excluded:[":hidden",":disabled",":not(visible)"] ,//bootstrapValidator的默認(rèn)配置excluded:[":disabled"],//關(guān)鍵配置,表示只對于禁用域不進(jìn)行驗(yàn)證,其他的表單元素都要驗(yàn)證fields: {productId: {trigger:"change", //問題2.關(guān)鍵配置validators: {notEmpty: {message: '請選擇一個商品'}}}}});//賦值之后觸發(fā)一次“change”事件$("input[name='productId']").val(data.productId).change();這樣以后bootrapValidator會因?yàn)橛|發(fā)了“change”事件,而捕獲,達(dá)到驗(yàn)證的效果
以上所述是小編給大家介紹的BootStrap Validator對于隱藏域驗(yàn)證和程序賦值即時驗(yàn)證的問題淺析,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對武林網(wǎng)網(wǎng)站的支持!
|
新聞熱點(diǎn)
疑難解答