我有一個C#項目,其中textbox
動態創建,當提交表單時,後面的代碼需要檢索textbox
的值。ASP.NET控件ID特殊字符
的textbox
的id
包含$
美元符號和檢索value
當它說empty
。
想知道$
被認爲是ID
的特殊字符還是有辦法解決這個問題?
//這裏是我的示例代碼
//Create Form
foreach (DataRow row in setOfColumns.Rows)
{
TextBox txtBox = new TextBox();
txtBox.ID = row["NameOfColumn"] + " textbox"; //Where row["NameOfColumn"] = "Money $"
}
//Display form on browser values
name="ctl00$ContentPlaceHolder1$ctl00$Money $"
id="ContentPlaceHolder1_ctl00_Money $"
value="$3,392"
//Submit Form
DataTable dt = new DataTable();
foreach (Control c in controls)
{
if (c is TextBox)
{
DataRow dr = dt.NewRow();
String txtValueCtrl = ((TextBox)c).Text.ToString(); //txtValueCtrl = "", it returns empty value for the textbox
dr["Value"] = txtValueCtrl;
dt.Rows.Add(dr);
}
}
//Once I remove the '$' from the txtBox.ID it is able to retrieve the value from the textbox
請顯示一些代碼給我們至少一點你如何做這件事。例如,它是一個ASP.NET TextBox控件嗎? –
當表單被提交時,它不是在表單數據中用作鍵的'id'屬性,而是'name'屬性。什麼是文本框的名稱? – Guffa
[在ASP.NET中訪問控制客戶端名稱而不是ID](http://stackoverflow.com/questions/5763557/accessing-control-client-name-and-not-id-in-asp-net) – Aristos