repeater全选问题
我做了一个前台用repeater显示数据使用全选做删除
前台显示的checkbox 控件需要到后台判断是否有权限删除,如果有页面显示checkbox
后台方法输出
return "<input type='checkbox' name='CkChecked' id='CkChecked' runat='server' value='" + wid + "'>";
前台调用
<td>
<%# GetIsclaimStr(DataBinder.Eval(Container.DataItem, "Isclaim").ToString(), DataBinder.Eval(Container.DataItem, "WtEndtime").ToString())%>
</td>
但是我点击删除的时候一直得不到checkbox控件对象
后台代码
protected void Unnamed1_Click(object sender, EventArgs e)
{
foreach (RepeaterItem item in this.RptWtList.Items)
{
object cb= null;
cb = item.FindControl("CkChecked");
//if (chkItem == null)
// continue;
//if (chkItem.Checked)
//{
// //被勾选
// Message.ShowMessage("OK");
//}
}
}
求解
[解决办法]
控件是需要注册的。
你在前台直接用控件。通过visible属性控制是否显示。
[解决办法]
你前台:
<asp:Repeater ID="rpt" runat="server"> <ItemTemplate> <tr> <td> <input id='<%#Eval("ID")%>' type="checkbox" value='<%#Eval("ID")%>' runat="server" Visible='<%#IsVisible(<%#Eval("ID"%>)%>'/> </td> </tr> </ItemTemplate> <ItemStyle HorizontalAlign="Center" /></asp:Repeater>后台根据写一个IsVisible方法,返回一个bool值就行了public bool IsVisible(string ID){ bool flag = false; //你的权限判断,然后返回 bool值即可,控制前面的checkbox是否显示 return flag;}
[解决办法]
前台
<asp:Repeater ID="repShopId" runat="server"> <ItemTemplate> <tr><td><input name="chkID" type="checkbox" value='<%# Eval("Id") %>' /></td></tr></asp:Repeater>
[解决办法]
Repeater 里面 <input type='checkbox' id='ChkSelect' class='nogrid' runat="server" value='<%#eval_r("ItemID")%>'/> Repeater 外面<input id="Checkbox1" type="checkbox" onclick='selectAll()' /> <asp:Button ID="Button1" runat="server" Text="Delete" OnClick="Button1_Click" />
[解决办法]
我想说的上面的都说了,顶一下
[解决办法]
已经测试6楼的好用
var checkbox = document.getElementsByTagName_r("input");
修正下 var checkbox = document.getElementsByTagName("input");
[解决办法]
蛋疼的结帖率
[解决办法]
看帖回复是种美德。。回帖得分才是王道。