情况是这样的
在普通页面里
我的gridview 里有
<asp:TemplateField HeaderText="选择">
<HeaderTemplate>
<input type="checkbox" id="selectall" onclick="select_all()">
</HeaderTemplate>
<ItemTemplate>
<asp:CheckBox ID="chkSelect" runat="server" />
</ItemTemplate>
<ControlStyle Width="10px" />
</asp:TemplateField>
这样的模板列
我可以用
for (int i = 0; i < this.defaultGrid.Rows.Count; i++)
{
CheckBox chk = (CheckBox)defaultGrid.Rows[i].FindControl("chkSelect");
//在这需判断是否没有选择
if (chk.Checked)
{
}}
这样来取得是否选择了
但是这个页面做为母版页的内容页的来说
就不能正确取到值了。
比如我这个
<asp:Content ID="Content1" ContentPlaceHolderID="Content" runat="Server">
</asp:Content>
应该怎么处理呢?
在普通页面里
我的gridview 里有
<asp:TemplateField HeaderText="选择">
<HeaderTemplate>
<input type="checkbox" id="selectall" onclick="select_all()">
</HeaderTemplate>
<ItemTemplate>
<asp:CheckBox ID="chkSelect" runat="server" />
</ItemTemplate>
<ControlStyle Width="10px" />
</asp:TemplateField>
这样的模板列
我可以用
for (int i = 0; i < this.defaultGrid.Rows.Count; i++)
{
CheckBox chk = (CheckBox)defaultGrid.Rows[i].FindControl("chkSelect");
//在这需判断是否没有选择
if (chk.Checked)
{
}}
这样来取得是否选择了
但是这个页面做为母版页的内容页的来说
就不能正确取到值了。
比如我这个
<asp:Content ID="Content1" ContentPlaceHolderID="Content" runat="Server">
</asp:Content>
应该怎么处理呢?
if(!isPostBack)
<asp:Content ID="Content1" ContentPlaceHolderID="Content" runat="Server">// 这里放置页面具体内容<asp:gridview id= ...
<columns>
<asp:TemplateField HeaderText="选择">
<HeaderTemplate>
<input type="checkbox" id="selectall" onclick="select_all()">
</HeaderTemplate>
<ItemTemplate>
<asp:CheckBox ID="chkSelect" runat="server" />
</ItemTemplate>
<ControlStyle Width="10px" />
</asp:TemplateField>
......</asp:Content>
// .aspx.cs
for (int i = 0; i < this.defaultGrid.Rows.Count; i++)
{
CheckBox chk = (CheckBox)defaultGrid.Rows[i].FindControl("chkSelect");
//在这需判断是否没有选择
if (chk.Checked)
{
}
}
<asp:Content ID="Content1" ContentPlaceHolderID="Content" runat="Server">// 这里放置页面具体内容<asp:gridview id="defaultGrid"
<columns>
<asp:TemplateField HeaderText="选择">
<HeaderTemplate>
<input type="checkbox" id="selectall" onclick="select_all()">
</HeaderTemplate>
<ItemTemplate>
<asp:CheckBox ID="chkSelect" runat="server" />
</ItemTemplate>
<ControlStyle Width="10px" />
</asp:TemplateField>
......</asp:Content>
// .aspx.cs
for (int i = 0; i < this.defaultGrid.Rows.Count; i++)
{
CheckBox chk = (CheckBox)defaultGrid.Rows[i].FindControl("chkSelect");
//在这需判断是否没有选择
if (chk.Checked)
{
}
}我的写法就是这样的
但是在
// .aspx.cs这个文件里这样写不能正确取到值啊。