如何使用 javascript 代码更改 jquery 移动单选按钮组?
How to change a jquery mobile radio button group with javascript code?
在 jquery 手机中,我想用 javascript 代码更改无线电组。我有这个:
<fieldset data-role="controlgroup" data-type="horizontal" data-mini="true">
<legend>Co-op Department:</legend>
<input name="coopdepartment" id="artssciRB" value="Arts & Science" checked="checked" type="radio">
<label for="artssciRB">Arts & Science</label>
<input name="coopdepartment" id="managementRB" value="Management" type="radio">
<label for="managementRB">Management</label>
<input name="coopdepartment" id="idsRB" value="IDS" type="radio">
<label for="idsRB">IDS</label>
</fieldset>
JS
var all = $("#profile-edit-form").find("input");
all.removeAttr("checked");
$("#profile-edit-form").find("input[value="+user['department_name']+"]").attr( "checked", "checked" );
all.checkboxradio( "refresh" );
但它不起作用...有人知道哪里出了问题吗?不过,它在输入标签上放置了一个选中的属性。
谢谢
.attr()
指的是实际标记中的 HTML 属性。您要使用的不是 HTML 属性,而是元素的 DOM 属性。你想要 .prop('checked')
而不是 .attr('checked')
.
当前复选框状态不是 attr
,而是 prop
。
all.prop("checked", false);
应该可以。
在 jquery 手机中,我想用 javascript 代码更改无线电组。我有这个:
<fieldset data-role="controlgroup" data-type="horizontal" data-mini="true">
<legend>Co-op Department:</legend>
<input name="coopdepartment" id="artssciRB" value="Arts & Science" checked="checked" type="radio">
<label for="artssciRB">Arts & Science</label>
<input name="coopdepartment" id="managementRB" value="Management" type="radio">
<label for="managementRB">Management</label>
<input name="coopdepartment" id="idsRB" value="IDS" type="radio">
<label for="idsRB">IDS</label>
</fieldset>
JS
var all = $("#profile-edit-form").find("input");
all.removeAttr("checked");
$("#profile-edit-form").find("input[value="+user['department_name']+"]").attr( "checked", "checked" );
all.checkboxradio( "refresh" );
但它不起作用...有人知道哪里出了问题吗?不过,它在输入标签上放置了一个选中的属性。
谢谢
.attr()
指的是实际标记中的 HTML 属性。您要使用的不是 HTML 属性,而是元素的 DOM 属性。你想要 .prop('checked')
而不是 .attr('checked')
.
当前复选框状态不是 attr
,而是 prop
。
all.prop("checked", false);
应该可以。