在Javascript中访问ASP.NET控件
我的ASP.NET web应用程序中有以下Javascript行:在Javascript中访问ASP.NET控件,javascript,asp.net,Javascript,Asp.net,我的ASP.NET web应用程序中有以下Javascript行: document.getElementById('<%=myTextBox[0].ClientID %>').value = "test"; 使用document.getElementById(“”).value=“test”给了我一个错误,它说myIndex没有定义,我想因为myIndex像服务器端参数一样使用,我该如何解决它 这是我的完整JavaScript函数: function OnFoodChang
document.getElementById('<%=myTextBox[0].ClientID %>').value = "test";
使用document.getElementById(“”).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);
}
}
函数OnFoodChange(myCmb,myIndex){
//警报(“5”);
试一试{
var q=document.getElementById(“”).value.toString();
var q2=q.split(“;”);
var指数=0;
//警报(myCmb.selectedIndex.toString());
//var e=document.getElementById(myCmb);
var strUser=myCmb.options[myCmb.selectedIndex].value;
document.getElementById(“”).value=strUser;
对于(var j=0;jddl.Attributes.Add("onChange", "return OnFoodChange(this,'" + myTextBox[i].ClientID + "');");
HTML格式的
function OnFoodChange(myCmb,myTextBoxId) {
currentTextBox = document.getElementById(myTextBoxId);
//Your code...
}
发送textbox的此控件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...
}
你能发布一些详细的代码以便我能更好地帮助你吗?你确定你有一个名为myTextbox的Textbox服务器端数组吗?您需要进一步详细说明您正在尝试做什么以及如何尝试。现在只有一些零碎的信息需要处理。你能发布一些详细的代码以便我能更好地帮助你吗?你确定你有一个名为myTextbox的Textbox服务器端数组吗?您需要进一步详细说明您正在尝试做什么以及如何尝试。现在只有一些零碎的信息需要处理。是否为myTextBox中的每个文本框分配id?在将其添加到数组之前,必须为TextBox分配id。TextBox t=新的TextBox();t、 ID=“SomePrefixIfYouWant”+UniqueNumberMightBeLoopVariable.ToString();myTextBox.Add(t);您也必须在这里反映ddl.Attributes.Add(“onChange”,“returnonfoodchange(this,“+i+”);”;您不应该发送它,您需要使用相同的命名约定发送,该命名约定用于将id分配给文本框,例如“SomePrefixIfYouWant”+UniqueNumberMightBeLoopVariable.ToString();好的,然后在浏览器中查看页面的来源,并查看文本框的id?是否为myTextBox中的每个文本框分配id?在将文本框添加到数组之前,必须为其分配id。TextBox t=新的TextBox();t、 ID=“SomePrefixIfYouWant”+UniqueNumberMightBeLoopVariable.ToString();myTextBox.Add(t);您也必须在这里反映ddl.Attributes.Add(“onChange”,“returnonfoodchange(this,“+i+”);”;您不应该发送它,您需要使用相同的命名约定发送,该命名约定用于将id分配给文本框,例如“SomePrefixIfYouWant”+UniqueNumberMightBeLoopVariable.ToString();好的,然后在浏览器中查看页面的源代码,并查看文本框的ID是什么?