1

我基本上是在尝试构建一个简单的问答游戏来学习 JavaScript。当显示下一个问题时,如何使单选按钮没有选中选项?

在此处查看 JSFiddle 示例

我试过这样的东西,但这是 JQuery。

$('[name="ans"]').prop('checked', false); 
4

2 回答 2

2

如果您确定您的用户正在使用支持 DOMdocument.querySelector()方法的最新浏览器,您可以使用:

document.querySelector('input[type="radio"]:checked').checked = false;

JS 小提琴演示

的好处querySelector()是它只返回与选择器模式匹配的第一个元素(假设它匹配任何元素)(尽管如果你想获得所有匹配的元素document.querySelectorAll())。

document当然,可以用 am element-node reference 替换(例如,将方法限制为仅搜索表单,而不是整个文档)。

参考:

于 2013-07-24T22:41:15.463 回答
1

如果你真的想避免使用 jQuery,你可以尝试这样的事情:

var radios = document.getElementsByName('an');
for(i = 0; i < radios.length; i++){
    radios[i].checked = false;
}

JSFiddle Demo

nextQ()请注意,在 HTML 中检查了第二个 radio 元素,但是在每次调用时都会执行此代码

于 2013-07-24T22:12:02.130 回答