Masterpage.cs內RUNAT =服務器HTML標記不runat=server
與母版
認識html標籤例如在母版:使用ckb
<input type="checkbox" runat="server" id="ckb" />
給出代碼隱藏follwing錯誤
名稱 'CKB' 不在當前情況下存在
更新輸入是內部轉發的
我怎樣才能得到他,改變他的屬性?
Masterpage.cs內RUNAT =服務器HTML標記不runat=server
與母版
認識html標籤例如在母版:使用ckb
<input type="checkbox" runat="server" id="ckb" />
給出代碼隱藏follwing錯誤
名稱 'CKB' 不在當前情況下存在
更新輸入是內部轉發的
我怎樣才能得到他,改變他的屬性?
如果您使用的是基於Template
控件內的控件(如<asp:Repeater>
),那麼你將不能夠像使用直接放在你的頁面/用戶控件/母版頁上的控件去的直接控制。
相反,您需要在模板控件本身上使用FindControl
。
例如,如果您設置了ItemDataBind
事件處理程序,你就能夠做到如下...
protected void repeater_ItemDataBound(object sender, RepeaterItemEventArgs e)
{
if(e.Item.ItemType == ListItemType.Header)
{
HtmlInputCheckBox chk = (HtmlInputCheckBox)e.Item.FindControl("chk");
}
}
您控制的id
是ckb
而不是checkAll
。
ckb
將在後面的代碼中被識別。
這是我的第一個想法(並且在我刪除它之前發表評論)......但是OP確實會說「使用ckb時」,所以我願意給他們帶來這個疑問的好處 – freefaller 2012-07-31 15:54:58
@freefaller - 可能,但錯誤消息肯定表明不是。 – Oded 2012-07-31 15:56:00
我發現問題,輸入是在一箇中繼器頭部,我怎麼能找到他並改變他的屬性? – baaroz 2012-07-31 15:58:27
你能提供的導致該錯誤代碼行? – freefaller 2012-07-31 15:52:32