[英]Why can't I check this radio button using jQuery?
这是我的单选按钮:
<input type="radio" name="coolSwitch" value="0">Off
<input type="radio" name="coolSwitch" value="1">On
当我加载页面时,第二个按钮已经被单击。 我想运行JS来检查第一个。 这是我的JS:
$('input[type="radio"][name="heatSwitch"]')[0].prop('checked',true);
但是我得到这个错误: $(...)[0].prop is not a function(…)
为什么?
这是因为您正在jQuery对象中访问索引为0
的DOM元素。 您不能在本机DOM元素上使用jQuery方法,这就是为什么您看到错误的原因。
使用.eq()
方法通过其索引获取jQuery对象 (而不是DOM元素):
$('input[type="radio"][name="heatSwitch"]').eq(0).prop('checked', true);
附带说明一下,值得一提的是,您甚至不必使用.prop()
方法。 如果要访问DOM元素,则只需直接修改checked
属性即可:
$('input[type="radio"][name="heatSwitch"]')[0].checked = true;
或没有jQuery:
document.querySelector('input[type="radio"][name="heatSwitch"]').checked = true;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.