我正在尝试将控件的 id 传递给 JavaScript 函数,该函数将其值(文本框控件)添加到列表框,但显然我没有得到正确的结果,有人可以纠正我吗?
谢谢。
<input type="button" ID="btnAddtoLstBox" value="" title="Add this to the list" onclick="javascript:addToList(document.getElementById(btnAddtoLstBox));"
class="ui-icon ui-icon-refresh ui-corner-all" style="width: 20px; height: 20px; background-position: -64px 80px" />
// scripts to add list items
function addToList(varTxtBox) {
// get the list box
var lb = document.getElementById("uilstMemTypeTier");
// get the text to add
var toAdd = varTxtBox.value;
if (toAdd == "") return false;
// look for the delimiter string. if found, alert and do nothing
if (toAdd.indexOf(delim) != -1) {
alert("The value to add to the list cannot contain the text \"" + delim + "\" as it is used as the delimiter string.");
return false;
}
// check if the value is already in the list box
for (i = 0; i < lb.length; i++) {
if (toAdd == lb.options[i].value) {
alert("The text you tried to add is already in the list box.");
return false;
}
}
// add it to the hidden field
document.getElementById("<%=uihdnlistBasedFieldsListItems.ClientID%>").value += toAdd + delim;
// create an option and add it to the end of the listbox
lb.options[lb.length] = new Option(toAdd, toAdd);
// clear the textfield and focus it
varTxtBox.value = "";
varTxtBox.focus();
}
最佳答案
将 onclick="javascript:addToList(document.getElementById(btnAddtoLstBox));"
更改为 onclick="addToList(document.getElementById('btnAddtoLstBox'));"
或 onclick="addToList(this);"
关于javascript - 将控制作为参数传递给 javascript 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7566041/