[英]jQuery Validation Plugin Multiple Checkboxes
我在使用jQuery Validator插件時遇到了一些困難。 我有一個具有不同 name
屬性的復選框列表,我似乎無法弄清楚如何確保至少選中了其中一個。 我在Google上發現的所有內容似乎都只能在name
屬性相同的情況下才能使用。
這是一些示例代碼(已更新) :
<ul id="email_lists">
<li>
<input name="checkbox1" type="checkbox" /> List 1
</li>
<li>
<input name="checkbox2" type="checkbox" /> List 2
</li>
<li>
<input name="checkbox3" type="checkbox" /> List 3
</li>
<li>
<input name="checkbox4" type="checkbox" /> List 4
</li>
</ul>
我要確保至少檢查了其中之一。 不幸的是,我不能使用與提交給第三方電子郵件營銷應用程序的表單相同的名稱,並且期望這些復選框具有特定的name
屬性。
更新資料
我知道如何使用普通jQuery來執行此操作,但我更喜歡使用jQuery Validator插件,因為這是完成頁面上所有其他驗證的方式。
我可以通過說$('#email_lists li');
來使用jQuery對這些復選框進行$('#email_lists li');
,但我不太確定如何使用類似內容,並告訴jQuery Validator插件將其作為一個組使用。
假設您可以為復選框指定一個類名(jQuery需要使用一些東西 ):
<input class="validationGroupOne" name="checkbox1" type="checkbox" />
<input class="validationGroupOne" name="checkbox2" type="checkbox" />
<input class="validationGroupOne" name="checkbox3" type="checkbox" />
<input class="validationGroupOne" name="checkbox4" type="checkbox" />
您應該能夠插入.validationGroupOne
類選擇器來代替通常的name
屬性。
這是我的解決方案:-)
采用:
<div id="list">
<input name="chkbox" type="checkbox" />
<input name="chkbox" type="checkbox" />
<input name="chkbox" type="checkbox" />
<input name="chkbox" type="checkbox" />
</div>
<input type="hidden" name="the_real_field_name" />
然后在jQuery中驗證插件塊:
rules : {
chkbox: "required"
},
然后將值作為數組存儲到單個隱藏字段中,例如:
function updateInput() {
var allVals = [];
$('#list :checked').each(function() {
allVals.push($(this).val());
});
$('#the_real_field_name').val(allVals);
}
$(function() {
$('#list input').click(updateInput);
updateInput();
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.