javascript自动检查单选按钮

Val*_*lav 8 javascript

我想自动检查单选按钮:我尝试了这个代码,但它不起作用:单选按钮有3个不同的值,我想选择值为'clean'的单选按钮.

如何自动检查网页上的单选按钮?谢谢!

function getElements()
  {

  for (i=0; i<document.getElementsByTagName('input').length; i++) 
  {
    //if (document.getElementsByTagName('input')[i].type == 'radio')
    if(document.getElementsByTagName('input')[i].type=='radio')
    {
        //if (document.getElementsByTagName('input')[i].value=='clean')
        document.getElementsByTagName('input')[i].click();
    }
  }
Run Code Online (Sandbox Code Playgroud)

我将代码修改如下:

 for (i=0; i<document.getElementsByTagName('input').length; i++) 
  {

    if(document.getElementsByTagName('input')[i].type=='radio')
    {


        if(document.getElementsByTagName('input')[i].value == "clean")
        {
        document.getElementsByTagName('input')[i].checked =true;
        }

    }
  }
Run Code Online (Sandbox Code Playgroud)

但它仍然没有工作:(

单选按钮位于iframe中,这可能是代码无效的原因吗?

Man*_*eUK 16

给你的单选按钮"名字"会让事情变得容易多了

<input type="radio" name="myradios" value="clean"/>
<input type="radio" name="myradios" value="somethingelse"/>

var elements = document.getElementsByName('myradios');
for (i=0;i<elements.length;i++) {
  if(elements[i].value == "clean") {
    elements[i].checked = true;
  }
}
Run Code Online (Sandbox Code Playgroud)

工作示例:http://jsfiddle.net/Dwzc9/

更新

getElementsByName 在所有IE版本中似乎都不支持...因此您可以根据原始示例使用以下内容:

var allElems = document.getElementsByTagName('input');
for (i = 0; i < allElems.length; i++) {
    if (allElems[i].type == 'radio' && allElems[i].value == 'clean') {
        allElems[i].checked = true;
    }
}
Run Code Online (Sandbox Code Playgroud)

工作示例:http://jsfiddle.net/Dwzc9/2/