如何用JavaScript创建一组单选按钮?

时间:2014-01-21 09:24:41

标签: javascript

有谁知道为什么这个简单的程序不起作用? 这是一个用Javascript创建一组单选按钮的程序。

<html>
  <head>
    <script>
      function onWriteRadio(Valuse,numButtons,RadioName){
        for(i=0;i<numButtons;i++){
          document.write("<input type='radio' name=" + RadioName + "value="       +Valuse[i]+"/>");
          document.write("<br/>");
        }
      }
    </script>
  </head>

  <body onload="onWriteRadio([red,green,blue],3,'color')>

  </body>
</html>

5 个答案:

答案 0 :(得分:5)

使用它:

onWriteRadio(['red','green','blue'],3,'color')

字符串数组值。目前,你说[红色,绿色,蓝色],这意味着变量红色,变绿色,变蓝色,但你没有在任何地方定义它们,所以你的程序说“嗯,我不知道红色是什么。” .. so string em。

答案 1 :(得分:2)

将数组值放在引号

onWriteRadio(['red','green','blue'],3,'color')

答案 2 :(得分:1)

你留下了一些引号。

function onWriteRadio(values, radioName){
    
          for (var i = 0; i < values.length; i++) {
        document.write("<input type='radio' name='" + radioName + "' value='" +values[i]+"' >"+values[i]+" </ input>");
        document.write("<br/>");
    }
    }
<html>
  <body onload="onWriteRadio(['red', 'green', 'blue'], 'color')">

  </body>
</html>

答案 3 :(得分:0)

document.write()将HTML表达式或JavaScript代码写入文档,该文档会重放您之前的html内容。

页面加载完成后执行的

document.write()将覆盖页面,或者写一个新页面。

document.write()是一种不好的做法

答案 4 :(得分:0)

  1. 将数组值放在引号
  2. onload
  3. 添加结束双引号
  4. 制作一个包含所有输入代码的字符串,然后将其写入
  5. 你的代码看起来应该是这样的:

    <html>
    <head>
    <script>
    function onWriteRadio(Valuse,numButtons,RadioName){
        var s = '';
        for(i=0;i<numButtons;i++){
            s += "<input type='radio' name=" + RadioName + "value="       +Valuse[i]+"/>"
        }
        document.write(s);
    }
    </script>
    </head>
    <body onload="onWriteRadio(['red','green','blue'],3,'color')">
    </body>
    </html>