javascript - 动态创建的组合框不起作用

标签 javascript

我使用 JavaScript 动态创建组合框。

这里是代码(或here!!!):

function CreateComboBox() {

 var selectElem = document.createElement('select');  
 var optionElem0 = document.createElement('option');
 var optionElem1 = document.createElement('option');
 var optionElem2 = document.createElement('option');
 var optionElem3 = document.createElement('option');
 var optionElem4 = document.createElement('option');

 selectElem.onchange = 'myFunction()';

 optionElem0.value=10;
 optionElem0.innerHTML="10";

 optionElem1.value=15;
 optionElem1.innerHTML="15";

 optionElem2.value=20;
 optionElem2.innerHTML="20";

 optionElem3.value=25;
 optionElem3.innerHTML="25";

 optionElem4.value=50;
 optionElem4.innerHTML="50";

 selectElem.appendChild(optionElem0);
 selectElem.appendChild(optionElem1);
 selectElem.appendChild(optionElem2);
 selectElem.appendChild(optionElem3);
 selectElem.appendChild(optionElem4);

 document.getElementById('ComboArea').appendChild(selectElem); 
}

function myFunction() {alert('HELLO!');}

创建组合框后,如果我从创建的组合中选择一个元素,我需要 myFunction() 但它不起作用,函数 myFunction() 没有被解雇,知道为什么吗?我做错了什么?

最佳答案

好吧,我找到了解决方案。

直接替换即可

selectElem.onchange = 'myFunction()';

selectElem.onchange = myFunction;

关于javascript - 动态创建的组合框不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27330434/

相关文章:

javascript - 如何使用 Fetch 发布 x-www-form-urlencoded 请求?

javascript - Threejs基本渲染问题

javascript - 我可以在浏览器或 Android 设备的后退按钮上设置页面链接吗?

javascript - 美国 map 插件(JQuery 插件)上的禁用状态

javascript - 无论屏幕大小如何,都适合屏幕内的内容 - Bootstrap

javascript - 使用数组对象获取最大的更大键值

Javascript - JQuery 追加函数和使用引号

Javascript:代码重构为单行而不是多行循环

javascript - 显示多个字幕的 html5 视频

javascript - 如果我的 h3 没有首先出现在页面上(PHP CSS 或 JS),则更改 CSS