如何使用javascript检查id字段为空的单选按钮

如何使用javascript检查id字段为空的单选按钮,javascript,jquery,Javascript,Jquery,下面是示例html代码 <div class="radioOff"> <input id="" class="hidden" type="radio"> <label for="">already a member</label> <span class="identity">identify</span> </div> 我试着用 document.getElementById.chec

下面是示例html代码

<div class="radioOff">
    <input id="" class="hidden" type="radio">
    <label for="">already a member</label>
    <span class="identity">identify</span>
</div>
我试着用 document.getElementById.checked=true; 它不起作用

我不能对代码做任何更改。 这是我需要选择单选按钮的第三方网站 你能试试这个吗

$(function(){
    $(".hidden").attr("checked", true);
});
您已经使用了空id=,您可以添加id值,也可以使用来获取类名称

  <input id="myRadio" class="hidden" type="radio">
Javascript:

document.getElementById("myRadio").checked = true;
试试这个

$('document').ready(function () {
    $(".hidden").attr("checked", true);
});
尝试:


不可能引用空ID,因为它将在DOM中被忽略


一个选项是使用GetElementsByCassName获取所有元素,然后遍历它们。第二个更好的选择是添加适当的ID属性,然后使用它。

您可以这样做,我相信IE8+和所有其他主流浏览器都支持querySelector

var elem = document.querySelector(".radioOff"),
    radio = (elem.firstElementChild||elem.firstChild);

radio.checked = true;
根据评论更新。要选择复选框déjámembr,您可以使用JQuery选择器,因为页面包含JQuery 1.7.2

$('.radioOff').find('input[type=radio]').prop('checked', true);

我已经试过了,效果非常好。。。。请从你这边试试

<div class="radioOff">
    <input id="" class="hidden" type="radio" />
    <label for="">already a member</label>
    <span class="identity">identify</span>
</div>
然后在使用下面的jquery代码之后,您还需要添加jquery文件引用

<script type="text/javascript" language="javascript">
$(document).ready(function () {
    $(".hidden").attr("checked", true);
});
</script>

您可以在ur js中使用此代码:

return ($('input[type=radio]:checked').size() > 0);



唯一正确的做法是修复HTML,不要使用空ID属性。请解释一下,为什么要将ID保留为空?小心,使用隐藏类作为选择器,听起来像是一个类,可以用于其他东西,然后只是一个单一的输入。这是一个tird党的网站,所以我可以做任何更改的代码抱歉Vishal我不能做任何更改的用户界面代码的第三方website@pravinkottawar我已经使用getElementsByClassName函数来修复它,这是Elon向您建议的。。。感谢you@pravinkottawargetElementsByClassName可以检索多个控件,所以您需要访问与数组相同的每个控件。像document.getElementsByClassNamehidden[0]我无法添加@Pravinkotawar您能告诉我您的代码更改限制和添加代码的限制吗…?我只是尝试了以下网站,但它不是working@pravinkottawar您有两个。隐藏元素的ID为空。ID必须是唯一的。此外,在您的站点上,您使用不同的代码来选择单选按钮。您正在使用图像显示选定的单选按钮。显示完整的代码,这将更容易理解。Hiral这不是我的网站,它的第三方网站,我们可以看到任何代码使用查看源代码,这是唯一的一个option@pravinkottawar这可能会有帮助:$signup form.hidden:first.parent.toggleClassradio-radio-off$注册表单.hidden:last.parent.toggleClassradio-radio-off$注册表单。隐藏:first.closestli.addClassactive$注册表单。隐藏:last.closestli.removeClassactive;firefox giving SyntaxError:unterminated string literal$signup Form抱歉,该脚本在firefox控制台中无法运行。我尝试了以下网站Jonathan,我想选择déjámembr而不是MRS。你能给出正确的答案吗?请看我修改过的答案。JQuery应该位于页面加载函数或JQuery document ready$document.readyfunction{$'.radioOff'.find'input[type=radio]'.prop'checked',true;}中;Jonathan当我在firefox控制台中为以下网站运行此改进的答案时,它不起作用代码确实起作用,但它更改了隐藏的输入。要更改复选框的隐藏输入和可见图形,您需要执行以下操作:var$radioOff=$'.radioOff',$radio=$'.radio'$radioOff.查找'input[type=radio]'。属性'checked',true$radioOff。删除类“radioOff”。添加类“radio”$radio.addClass'radioOff'。删除class'radio';它正在被点击,但点击后,用户名和密码字段不显示。它在站点控制台中不工作
<div class="radioOff">
    <input id="" class="hidden" type="radio" />
    <label for="">already a member</label>
    <span class="identity">identify</span>
</div>
<script type="text/javascript" language="javascript">
$(document).ready(function () {
    $(".hidden").attr("checked", true);
});
</script>
return ($('input[type=radio]:checked').size() > 0);
if(document.getElementsByClassName("hidden").checked)