Javascript 单选按钮没有按应有的方式显示

Javascript 单选按钮没有按应有的方式显示,javascript,html,Javascript,Html,我必须编辑现有的HTML更改标题和变量,并通过Firebug运行它。我的单选按钮是盒子或根本不显示,我不知道为什么。我附上了HTML代码和Firebug输出的截图。我使用在线转换器将HTML转换为JavaScript。我是JavaScript新手,很难处理这个问题。任何帮助都将不胜感激 HTML代码: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <HTML><HEAD><T

我必须编辑现有的HTML更改标题和变量,并通过Firebug运行它。我的单选按钮是盒子或根本不显示,我不知道为什么。我附上了HTML代码和Firebug输出的截图。我使用在线转换器将HTML转换为JavaScript。我是JavaScript新手,很难处理这个问题。任何帮助都将不胜感激

HTML代码:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD><TITLE>Radio Buttons</TITLE>
<META content=3D"text/html; charset=3Dwindows-1252" =
http-equiv=3DContent-Type>
<SCRIPT type=3Dtext/javascript>
    function pick_a_business_card(){
        var base_cost =3D get_business_card_value();
        alert(base_cost);
    }
    function get_business_card_value(){
        var radio_buttons =3D document.getElementsByName('business card');

        for (var i =3D 0, length =3D radio_buttons.length; i < length; i++) {
        =09
            if (radio_buttons[i].checked) {
                return radio_buttons[i].value;
            }
        }
    }
</SCRIPT>

<META name=3DGENERATOR content=3D"MSHTML 8.00.7601.18129"></HEAD>
<BODY>
    <FORM id=3Dbusiness_card_addons_calculation_form method=3Dpost action=3D#>
    <H2>Radio Buttons</H2>
    <P><STRONG>Pick a Business Card:</STRONG><BR><BR><INPUT id=3Dvertical value=3Dvertical
=
type=3Dradio=20
name=3Dcolor> <LABEL for=3Dvertical>Vertical</LABEL> <BR><INPUT id=3Dhorizontal =
value=3Dhorizontal=20
type=3Dradio name=3Dcolor> <LABEL for=3Dhorizontal>Horizontal</LABEL> <BR><INPUT =
id=3DFoldover=20
value=3Dfoldover type=3Dradio name=3Dcolor> <LABEL for=3DFoldover>Foldover</LABEL> =
</P>
    <P><INPUT onclick=3Dpick_a_business_card() value=3D" Submit " =
type=3Dbutton></P>
</FORM>
</BODY>
</HTML>

看来有些东西在你的转换过程中编码不正确

我整理了一下你的代码,这应该有助于你开始

以下是完整的HTML:

<html>
<head>
  <script>
    function pick_a_business_card(){ 
      var base_cost = get_business_card_value(); 
      alert(base_cost);

    }
    function get_business_card_value(){
      var radio_buttons = document.getElementsByName('color');

      for (var i = 0, length = radio_buttons.length; i < length; i++) {
        if (radio_buttons[i].checked) {
          return radio_buttons[i].value;
        }
      }
    }
  </script>
</head>
<body>
<FORM id=business_card_addons_calculation_form method=post action=#>
<H2>Radio Buttons</H2>
<P><STRONG>Pick a Business Card:</STRONG><BR><BR><INPUT id=vertical value=vertical
type=radio
name=color> <LABEL for=vertical>Vertical</LABEL> <BR><INPUT id=horizontal
value=horizontal
type=radio name=color> <LABEL for=horizontal>Horizontal</LABEL> <BR><INPUT 
id=Foldover
value=foldover type=radio name=color> <LABEL for=Foldover>Foldover</LABEL>
</P>
<P><INPUT onclick=pick_a_business_card() value=" Submit "
type=button></P></FORM>
</body>
</html>

此外,我建议在HTML属性周围加上引号。

w3学校是新语言教程的绝佳起点。我不推荐在线转换器,因为首先你不知道它们是否“正确”,其次你不知道javascript在做什么!3Dradio不是有效的输入类型。为什么3D在所有HTML属性前加前缀?%3D是等号=无法将HTML转换为JavaScript。这根本没有道理。请解释您试图实现的目标。请包括一个再现问题的最小示例、一个清晰的问题陈述,以及任何错误消息或其他有助于识别问题的信息。如果没有这些信息,很难回答这个问题。我得到了HTML页面,不得不将文本和变量修改为其他内容。除了我想更改的代码外,我没有碰任何代码。我想我还不知道还有什么应该改变。我只有今晚才能修好它。啊。当我运行您在Firebug中提供的内容时,我遇到了一个错误。你说帮助你开始,我猜这意味着我必须做更多的事情才能让它正常工作?哈哈。你提供的代码中有很多无效的HTML。也就是说,3D和=20出现在所有的地方。我删除了其中的大部分,但在javascript中遗漏了一些。我更新了链接,示例现在可以运行了。另外,你的JS正在搜索名为“名片”的项目,但你的输入名为“颜色”——我也解决了这个问题,现在这个示例正在运行。啊,我想我找到了所有的“颜色”输入!我认为3D与单选按钮的样式有关。我真傻我还是无法让它在Firebug中运行,知道为什么吗?对不起,我很需要。LOLIt对我来说很好。Firefox30.0中的Firebug 2.0.2。也许可以在HTML属性周围添加缺少的引号。