急!前台服务控件在后台无法找到!不是没有server哈,是有的 也没改过什么!一个拖的是服务控件text 一个拖的是html控件 然后加入了 runat="server"奇怪的是这两个控件都找不到!我前面有个服务控件lable也是找不到,但是我用这种方法把他找到了:
if (e.Item.ItemType == ListItemType.AlternatingItem || e.Item.ItemType == ListItemType.Item)
{
lbl = (Label)(e.Item.FindControl("Label1"));
}但是前面两个用这种方法就不行!!急需解决ok就给分,谢谢了!关键代码:
html<div id="hf+<%# Eval("lybh")%>" style="display:none; border:1px solid black; width:254px; text-align:center">
<table>
<tr>
<td align=right>昵称:</td>
<td>
<asp:TextBox ID="TextBox1" runat="server" Width="175px"></asp:TextBox></td>
</tr>
<tr>
<td align=right>内容:</td>
<td>
<textarea id="TextArea1" cols="20" rows="2" runat="server" style=" height:170" ></textarea></td>
</tr>
<tr>
<td colspan="2" align=center>
<asp:Button ID="Button1" runat="server" Text="确定" OnClick="Button1_Click" />
<input type="button" id="<%# Eval("lybh")%>" value="取消" onclick="qx(this)" /></td>
</tr>
</table>
</div>
后台:protected void Button1_Click(object sender, EventArgs e)
{
TextBox nmd = (TextBox)(RepeaterPage.FindControl("TextBox1"));
// TextBox nm = (TextBox)( Repeater2.ItemTemplate.InstantiateIn("TextBox1"));
TextBox nr = (TextBox)(Master.FindControl("TextArea1"));
TextBox cc= (TextBox) this.Repeater2.FindControl("TextBox1");
Response.Write("<script>alert('资料有误!');</script> ");
}写法都是不成功的!
if (e.Item.ItemType == ListItemType.AlternatingItem || e.Item.ItemType == ListItemType.Item)
{
lbl = (Label)(e.Item.FindControl("Label1"));
}但是前面两个用这种方法就不行!!急需解决ok就给分,谢谢了!关键代码:
html<div id="hf+<%# Eval("lybh")%>" style="display:none; border:1px solid black; width:254px; text-align:center">
<table>
<tr>
<td align=right>昵称:</td>
<td>
<asp:TextBox ID="TextBox1" runat="server" Width="175px"></asp:TextBox></td>
</tr>
<tr>
<td align=right>内容:</td>
<td>
<textarea id="TextArea1" cols="20" rows="2" runat="server" style=" height:170" ></textarea></td>
</tr>
<tr>
<td colspan="2" align=center>
<asp:Button ID="Button1" runat="server" Text="确定" OnClick="Button1_Click" />
<input type="button" id="<%# Eval("lybh")%>" value="取消" onclick="qx(this)" /></td>
</tr>
</table>
</div>
后台:protected void Button1_Click(object sender, EventArgs e)
{
TextBox nmd = (TextBox)(RepeaterPage.FindControl("TextBox1"));
// TextBox nm = (TextBox)( Repeater2.ItemTemplate.InstantiateIn("TextBox1"));
TextBox nr = (TextBox)(Master.FindControl("TextArea1"));
TextBox cc= (TextBox) this.Repeater2.FindControl("TextBox1");
Response.Write("<script>alert('资料有误!');</script> ");
}写法都是不成功的!
protected void Button1_Click(object sender, EventArgs e)
{
RepeaterItem item =(RepeaterItem) ((Button)sender).Parent;
Label l = (Label)item.FindControl("lbl");
Response.Write(l.Text);
}
Label l = (Label)item.FindControl("lbl");蓝色是找到Repeater的行。
红色是用这一行来找控件
你要找TextBox 还是 TextArea1 自己换一下不就完了