答案 0 :(得分:1)
您需要为lockSelect
创建一个功能。您没有显示disable
的功能,所以我不得不猜测。
lockSelect
应调用disable
将事件目标元素传递给它。
最好只更改禁用的函数来操作事件对象。并将其直接传递给事件监听器。
function disable(e) {
e.target.disabled = true
}
var optionList = ["default", "yes", "no"];
var newTableRow = document.querySelector('tr')
function disable(element) {
element.disabled = true
}
function lockSelect(e) {
disable(e.target)
}
var td = document.createElement("td");
selectList = document.createElement("select");
selectList.addEventListener("change", lockSelect, false);
td.appendChild(selectList);
newTableRow.appendChild(td);
for (var j = 0; j < optionList.length; j++) {
option = document.createElement("option");
option.value = optionList[j];
option.text = optionList[j];
selectList.appendChild(option);
}
<table>
<tr></tr>
</table>