我为什么要挣扎?
我有一个值:5
如何检查组"mygroup"的单选按钮值为5?
$("input[name=mygroup]").val(5); // doesn't work?
Run Code Online (Sandbox Code Playgroud)
Fel*_*ing 325
在属性选择器的帮助下,您可以选择具有相应值的input元素.然后你必须使用.attr以下方法显式设置属性:
var value = 5;
$("input[name=mygroup][value=" + value + "]").attr('checked', 'checked');
Run Code Online (Sandbox Code Playgroud)
从jQuery 1.6开始,你也可以使用.prop带有布尔值的方法(这应该是首选方法):
$("input[name=mygroup][value=" + value + "]").prop('checked', true);
Run Code Online (Sandbox Code Playgroud)
请记住,您首先需要从一个单选按钮组下的任何单选按钮中删除已检查的属性,然后您才能将选中的属性/属性添加到该单选按钮组中的单选按钮之一.
代码从一个单选按钮组的所有单选按钮中删除已检查的属性 -
$('[name="radioSelectionName"]').removeAttr('checked');
Run Code Online (Sandbox Code Playgroud)
Jon*_*ier 138
有一种更好的方法来检查无线电和复选框; 您必须将值数组传递给val方法而不是原始值
$("input[name=mygroup]").val([5]);
Run Code Online (Sandbox Code Playgroud)
以下是解释其工作原理的jQuery文档:http://api.jquery.com/val/#val-value
而且.val([...])还与表单元素<input type="checkbox">,<input type="radio">和<option>S的内部<select>.
将检查或选择具有与阵列的一个元素匹配的值的输入和选项,而具有与阵列的一个元素不匹配的值的输入和选项将被取消选中或取消选中
小提琴演示这个工作:https://jsfiddle.net/92nekvp3/
Dav*_*mas 14
试试这个:
$('input:radio[name="mygroup"][value="5"]').attr('checked',true);
Run Code Online (Sandbox Code Playgroud)
$("input[name='mygroup'][value='5']").attr("checked", true);
Run Code Online (Sandbox Code Playgroud)
如上所述更改属性值时,change事件不会被触发,因此如果出于某些原因需要,您可以像这样触发它
$('input[name=video_radio][value="' + r.data.video_radio + '"]')
.prop('checked', true)
.trigger('change');
Run Code Online (Sandbox Code Playgroud)
小智 6
纯 JavaScript 版本:
document.querySelector('input[name="myradio"][value="5"]').checked = true;
Run Code Online (Sandbox Code Playgroud)
小智 5
我在使用时遇到错误
$("input[name=mygroup][value="value"]").prop('checked', true);
Run Code Online (Sandbox Code Playgroud)
工作方式是
$("input[name=mygroup][value='value']").prop('checked', true);
Run Code Online (Sandbox Code Playgroud)
问题是处理引号(')和双引号(“)。
| 归档时间: |
|
| 查看次数: |
251435 次 |
| 最近记录: |