如何在jQuery中基于radio类型的输入设置布尔值?



我有一对无线电类型的输入,如下所示:

<label>YES</label>
<input type="radio" name="uscitizen" id="uscitizenyes" value="YES" required />
<label>NO</label>
<input type="radio" name="uscitizen" id="uscitizenno" value="NO" />

设置Sharepoint 2010列表项的值(在这个例子中是'ptli_USCitizen'),这是最好的方法吗?

oListItem.set_item('ptli_USCitizen', ($('uscitizenyes').val() == 'YES'));

…还是有一种更"被接受的模式"的方式?

可以使用:checked选择器

$('[name=uscitizenyes]:checked').val()

假设您希望列表的值与问题

中所示的布尔值相反
oListItem.set_item('ptli_USCitizen',$('[name=uscitizenyes]:checked').val())

For boolean可以使用YES和is(':checked')的ID

oListItem.set_item('ptli_USCitizen',$('#uscitizenyes').is(':checked'))

可以。

oListItem.set_item('ptli_USCitizen', ($('[name="uscitizen"]:checked').val() == 'YES'));

但是在用户界面中处理布尔值的最好方法是使用复选框而不是单选按钮。

Us Citizen: <input type='checkbox' id='uscitizen' name='uscitizen' />

然后使用:

oListItem.set_item('ptli_USCitizen', ($('#uscitizen').is(':checked'));

试着得到一个bool结果,而不需要明确地检查是否为YES。

$('#radio_button').is(':checked')

最新更新