使用 Javascript 函数根据所选选项设置 HTML 文本框值.但它似乎不起作用

setting the HTML textbox value based on the selected option using Javascript function. But it seems to be not working

本文关键字:文本 不起作用 HTML 设置 函数 Javascript 选项 使用      更新时间:2023-09-26

这是将所选选项值分配给文本框的javascript片段

function check() {
 document.getElementById("inp").value=document.getElementById("id").value ;
} 

这是实际的 HTML 代码

<form>
<select id="id"  onSelect="check( );">
<option></option>
<option value=85.5>opt1</option>
<option value=95.5>opt2</option>
<option value=95.5>opt3</option>
<option value=95.5>opt4</option>
</select>
<input type=text name="input" id="inp">
</form>

我希望做对了,但仍然无法得到我的解决方案

这是您的修复方法。

这个有效

我想它的总结是你应该改变 onSelect 到 onChange。

<script>
 function check() {
     document.getElementById("inp").value=document.getElementById("id").value;
    } 
 </script>
</head>
<body>
    <form>
        <select id="id"  onChange="check();">
        <option></option>
        <option value=85.5>opt1</option>
        <option value=95.5>opt2</option>
        <option value=95.5>opt3</option>
        <option value=95.5>opt4</option>
        </select>
    <input type=text name="input" id="inp" value="">
    </form>
</body>

假设这个html

<select id="id">
  <option value="">Please select</option>
  <option value="85.5">opt1</option>
  <option value="95.5">opt2</option>
  <option value="95.5">opt3</option>
  <option value="95.5">opt4</option>
</select>

你可以使用不显眼的JavaScript并将其添加到头部

普通 JS:

window.onload=function() { 
  document.getElementById("id").onchange=function() {     
    this.form.input.value=this.value; 
  }
}

在jQuery中相同

$(function() { 
  $("#id").on("change",function() { 
    $("#inp").val($(this).val()); 
  }); 
}); 

如果您必须内联执行此操作,则

<select id="id" onchange="this.form.input.value=this.value;">

你的 HTML 和你的 javascript 一样有多个问题

您的格式化网页

<form>
<select id="id" onChange="check();">
    <option></option>
    <option value="85.5">opt1</option>
    <option value="95.5">opt2</option>
    <option value="95.5">opt3</option>
    <option value="95.5">opt4</option>
</select>
<input type="text" name="input" id="inp" />
</form>

.JS

function check() {
    document.getElementById("inp").value = document.getElementById("id").value;
}

工作演示

此外,您应该将值括起来,例如 value="。除此之外,没有重大问题