我有一个带有input
的javascript type="text"
对象,以及由(相关行)创建的onchange
事件:
var id_box = document.createElement('input');
id_box.id = 'id_box';
id_box.type = 'text';
id_box.onchange = function()
{
alert("Changed!");
}
要更改此value
字段中的input
,请使用:
var a = document.createElement('a');
a.innerHTML = "A";
a.onclick = function()
{
document.getElementById('id_box').value = 'A';
}
onchange
事件仅通过键盘输入改变值,但不能通过上面的函数改变值。有什么方法可以使它有效吗?
答案 0 :(得分:9)
您使用的浏览器是什么?
我做了这个例子,这对我有用......微妙的变化是我在将它附加到div元素之前将事件添加到输入中。
<div id="test"></div>
<script type="text/javascript">
var id_box = document.createElement('input');
id_box.type = 'text';
id_box.onchange = function()
{
alert("Changed!");
}
document.getElementById("test").appendChild(id_box);
</script>
在JS Fiddle上看到它:http://jsfiddle.net/Sohnee/zCMdV/
<强>更新强>
如果您要自动更改值,您可以执行同样的操作来触发更改事件......
http://jsfiddle.net/Sohnee/zCMdV/10/
document.getElementById('id_box').onchange();