[英]accessing ASP.NET controls in Javascript
我的ASP.NET Web应用程序中包含以下Java语言行:
document.getElementById('<%=myTextBox[0].ClientID %>').value = "test";
如何访问myTextBox元素? 例如,我想更改此服务器端数组的第5个元素,我想将服务器端参数传递给我的函数,该怎么办?
例如:
server side:
ddl.Attributes.Add("onChange", "return OnFoodChange(this,'" + i + "');");
javascript function:
function OnFoodChange(myCmb,myIndex)
使用document.getElementById('<%=myTextBox[myIndex].ClientID %>').value = "test";
给我错误,它表示未定义myIndex,我认为因为myIndex的用法类似于服务器端参数,我该如何解决呢?
这是我完整的JavaScript函数:
function OnFoodChange(myCmb,myIndex) {
//alert('5');
try{
var q = document.getElementById('<%= HFFoodPrice.ClientID %>').value.toString();
var q2 = q.split(';');
var index = 0;
//alert(myCmb.selectedIndex.toString());
//var e = document.getElementById(myCmb);
var strUser = myCmb.options[myCmb.selectedIndex].value;
document.getElementById('<%=myTextBox[0].ClientID %>').value = strUser;
for (var j = 0; j < q2.length; j++) {
if (q2[j] != '') {
var q3 = q2[j].split(',');
{
}
}
}
}
catch(err)
{
alert(err.message);
}
}
发送此文本框控件ID而不是发送索引,因为asp.net控件ID可能不符合您的预期,
在后面的代码中
ddl.Attributes.Add("onChange", "return OnFoodChange(this,'" + myTextBox[i].ClientID + "');");
在HTML中
function OnFoodChange(myCmb,myTextBoxId) {
currentTextBox = document.getElementById(myTextBoxId);
//Your code...
}
您正在尝试将服务器端与客户端混在一起。 它不能像这样工作。 您需要将服务器数组传输到服务器上的javascript,然后才能在客户端上访问其索引。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.