在javascript问题中创建onChange
我正在尝试将更改事件分配给元素。我有在javascript问题中创建onChange,javascript,Javascript,我正在尝试将更改事件分配给元素。我有 var testDiv=getElementById('testDiv'); var SelectMenu=document.createElement('select'); SelectMenu.id='SelectMenu'; SelectMenu.onchange=changeFuntion(); testDiv.appendChild(SelectMenu); function changeFuntion(){
var testDiv=getElementById('testDiv');
var SelectMenu=document.createElement('select');
SelectMenu.id='SelectMenu';
SelectMenu.onchange=changeFuntion();
testDiv.appendChild(SelectMenu);
function changeFuntion(){
//it calls right after I load the page....
alert('call');
}
html
我只希望在用户更改dropdonw菜单时显示警报。但是,似乎在创建元素后立即调用了警报。
有什么建议吗?非常感谢
SelectMenu.onchange=changeFuntion() 将函数changeFunction
的返回值指定给SelectMenu.onchange
,而不是函数本身。试试看
SelectMenu.onchange=changeFuntion(); <-- This calls the function
^^--- Remove the braces
SelectMenu.onchange = changeFuntion;
相反。您拥有它的方式,即:
SelectMenu.onchange = changeFuntion();
方法:调用函数changeFunction
,并将返回值分配给SelectMenu.onchange
属性
SelectMenu.onchange = changeFuntion;
SelectMenu.onchange = changeFuntion();