今天我编码了这个,但是当我使用我的下拉列表时,我无法工作...... 当我自己写这些数字时它工作正常。 为什么呢?!
function favBrowser() {
var mylist=document.getElementById('myList');
document.getElementById('favorite').value=mylist.value;
}
function bar() {
document.write('Hello World!');
<select id="myList" onchange="favBrowser()">
<option></option>
<option value="a">a</option>
<option value="b">b</option>
<option value="c">c</option>
<option value="d">d</option>
<option value="e">e</option>
</select>
<p>heheheh: <input type="text" id="favorite" size="20" oninput="return bar()" onValueChanged="return bar()" value=""></p>
答案 0 :(得分:1)
我认为这就是你要找的东西
function favBrowser(list) {
document.getElementById('favorite').value=list.value;
}
<select id="myList" onchange="favBrowser(this)">
<option></option>
<option value="a">a</option>
<option value="b">b</option>
<option value="c">c</option>
<option value="d">d</option>
<option value="e">e</option>
</select>
<p>heheheh: <input type="text" id="favorite" size="20" value=""></p>
答案 1 :(得分:0)
选择元素没有值,其中的选项元素具有值。请尝试以下方法:
document.getElementById('favorite').value=mylist.options[myList.selectedIndex].value;
没有经过测试,但这就是想法
答案 2 :(得分:0)
拥有此代码的HTML代码:
<select id="myList" onchange="favBrowser(this.value)">
<option></option>
<option value="a">a</option>
<option value="b">b</option>
<option value="c">c</option>
<option value="d">d</option>
<option value="e">e</option>
</select>
<input type="text" id="favorite" size="20" value=""/>
你可以做下一个:
function favBrowser(val) {
document.getElementById('favorite').value=val;
}
每次更改下拉列表的值时,都会自动更改输入值,因为您将下拉列表的值作为参数发送。
答案 3 :(得分:0)
首先,没有事件onValueChanged
;你正在寻找onchange
。
当您的下拉脚本更改bar()
的值时未触发favorite
的原因是,当通过用户更改元素的值时会触发oninput
接口(不是脚本),onchange
发生时触发blur
(即input
元素失去焦点)。因此,为了获得您想要的结果,您需要从bar()
致电favBrowser()
:
function favBrowser() {
var mylist=document.getElementById('myList');
document.getElementById('favorite').value=mylist.value;
bar();
}