【问题标题】:Populate text field when select radio button选择单选按钮时填充文本字段
【发布时间】:2013-10-03 13:45:17
【问题描述】:

我有一个 HTML 表单,当我选择其中一个单选按钮时,我试图获取一个文本字段来显示某些文本。到目前为止,如果我单击按钮,它将在文本字段中显示正确的文本。我的目标是消除“单击”按钮,并在我选择单选按钮时让文本字段立即显示文本。我怎样才能在 Javascript 中做到这一点?

我知道文本字段有一个“OnKeyUp”事件,但我似乎无法弄清楚单选按钮是否有某种类似的东西可以让我确定何时选择了一个。我已经尝试过 OnChange 和 OnFocus 事件,但也许我做错了,因为我无法让它们工作。非常感谢任何和所有建议。

这是我目前所拥有的:

<HTML>
  <HEAD>
    <TITLE>Test Input</TITLE>
    <SCRIPT LANGUAGE="JavaScript">
      function testResults (form) {
      var TestVar1 = form.input[0].checked;
      var TestVar2 = form.input[1].checked;
        if (TestVar1 == true) {
          form.textbox.value = "red";
        } else if (TestVar2 == true){
          form.textbox.value = "blue";
        } else if (TestVar1 == false && TestVar2 == false) {
          form.textbox.value = "";
        }
      }
</SCRIPT>
</HEAD>
<BODY>
<FORM NAME="myform" ACTION="" METHOD="POST">Choose a Color: <BR>
  <INPUT TYPE="radio" NAME="input" VALUE="red">red<P>
  <INPUT TYPE="radio" NAME="input" VALUE="blue">blue<P>
  <INPUT TYPE="button" NAME="button" VALUE="Click" onClick="testResults(this.form)">
  <P>Selected:</P> <INPUT TYPE="text" ID="textbox" NAME="selected" VALUE=""></div><p>

</FORM>
</BODY>
</HTML>

【问题讨论】:

    标签: javascript html radio-button textfield


    【解决方案1】:

    更改以下两行代码添加onchange事件:

    TYPE="radio" NAME="input" VALUE="red"  onchange="testResults(this.form)
    TYPE="radio" NAME="input" VALUE="blue" onchange="testResults(this.form)
    

    如果这不起作用,则可能是您的浏览器。 document.getElementByID 是除所有浏览器之外的对象

    【讨论】:

    • 谢谢!!我忘记了testResults(this.form)中的this
    • 只是在不同浏览器中的行为说明:在 Firefox 中效果很好!在 Internet Explorer 中,需要单击单选按钮外的某个位置才能识别更改。
    猜你喜欢
    • 2015-03-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-09-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-08-04
    相关资源
    最近更新 更多