[英]passing dynamically created ASP.NET controls to Javascript
我正在ASP.NET Web應用程序表行中動態生成一個文本框和一個下拉列表,我想使用javascript根據dropdownlist selectedindex更改文本框的值,但是我不知道如何將這些動態創建的控件傳遞給我的Javascript功能。
TextBox t = new TextBox();
tc.Controls.Add(t);
tr.Cells.Add(tc);
tc = new TableCell();
DropDownList ddl = new DropDownList();
ddl.Attributes.Add("onChange", "return OnFoodChange(this," + t + ");");
tc.Controls.Add(ddl);
我通過了'this'而不是我的組合框,它可以正常工作,但在以下JavaScript函數中未檢測到文本框:
function OnFoodChange(myCmb,myTxt) {
try{
var q = document.getElementById('<%= HFFoodPrice.ClientID %>').value.toString();
var q2 = q.split(';');
alert(myCmb.selectedIndex.toString());
alert(document.getElementById(myTxt.value));
for (var j = 0; j < q2.length; j++) {
if (q2[j] != '') {
var q3 = q2[j].split(',');
{
}
}
}
}
catch(err)
{
alert(err.message);
}
}
將動態創建的控件傳遞給javascript函數的正確方法是什么? 我應該在代碼背后設置控件ID嗎?
在C#中:
ddl.Attributes.Add("onChange", "return OnFoodChange(this," + t.ClientID + ");");
在Javascript中,請嘗試以下操作:
alert(document.getElementById(myTxt).value);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.