2012-12-24

[ASP.NET, Javascript] 如何取得UserControl的值

由於UserControl是包含多個物件的,所以如果要取裡面物件的值,有時候必須指定到該物件才取得到。

以下分別列出前端和後端的作法:

前端:
//假設這個UserControl只包含一個TextBox,且不知道TextBox的ID
var obj1 = $("input[id*='<%= UserControl1.ClientID %>']")[0].value;

//如果知道TextBox的ID
var obj2 = $('#<%=UserControl1.FindControl("TextBox_ID").ClientID %>').val();

後端取GridView裡UserControl的值:
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
 if (e.Row.RowType == DataControlRowType.DataRow)
 {
  string strName = ((TextBox)e.Row.FindControl("UserControl1").FindControl("TextBox_ID")).Text;
 }
}

至於如何取得ASP.NET常用元件的值,可參考此篇

沒有留言:

張貼留言