嘿,我正在做一些事情,但可以而且不想改变HTML。无法添加ID按钮。我想选择第二个无线电输入。
这是html:
<fieldset>
<legend>I want to sign up:</legend>
<label>
<input type="radio" name="submit-for" value="project">
<span>For project</span>
</label>
<label>
<input type="radio" name="submit-for" value="stage">
<span>As intern</span>
</label>
</fieldset>
这是我尝试在javascript中选择它的方式,但它没有用:
document.querySelector('input[type="radio"]:nth-of-type(2)').onclick = function () {
document.getElementById("project").style.display = 'none';
document.getElementById("stage").style.display = 'block';
};
和
document.querySelector('input[type="radio"]:nth-child(2)').onclick = function () {
document.getElementById("project").style.display = 'none';
document.getElementById("stage").style.display = 'block';
};
有人可以帮忙吗?
答案 0 :(得分:4)
你真的想选择第二个&#34;单选按钮,或者您是否要选择&#34;带有值的单选按钮&#39;&#39;&#34;?第二种选择听起来更具扩展性。
document.querySelector('input[type="radio"][value="stage"]')
编辑:此外,对于不使用身份证使用情况而言,提出了您的问题。无论你是否被迫加入,都是好的做法。
答案 1 :(得分:1)
document.querySelectorAll('fieldset input[type="radio"]')[1]=function () {
document.getElementById("project").style.display = 'none';
document.getElementById("stage").style.display = 'block';
};
答案 2 :(得分:0)
您可以使用document.getElementsByName("submit-for")[1];
并选择第二个集:
@media only screen and (max-width: 32em) {
.no-js .show_menu_btn {
display: none;
}
.no-js #nav ul {
display: block;
}
.js .show_menu_btn {
display: block;
}
.js #nav ul {
display: none;
}
} /* this right here, take it out */
... /* more code here */
} /* closing bracket */
答案 3 :(得分:0)
用户@somethinghere已关闭,OP选择了一个不适用于问题标题的答案,因此对于那些 寻找问题标题答案的人来说,你去了:
var r = document.querySelectorAll('input[type="radio"]');
if (r.item.length > 0) {console.log(r.item(1));