<asp:datagrid id="dgUser" Runat="server" Width="100%" HorizontalAlign="Center" BorderColor="White"
BorderWidth="1px" CellPadding="1" AutoGenerateColumns="False" Visible="False">
<AlternatingItemStyle CssClass="DTG-Item-1-1"></AlternatingItemStyle>
<ItemStyle CssClass="DTG-Item-1-1"></ItemStyle>
<HeaderStyle CssClass="DTG-Header-1"></HeaderStyle>
<FooterStyle CssClass="DTG-Footer-1"></FooterStyle>
<Columns>
<asp:TemplateColumn HeaderStyle-Width="5%">
<ItemTemplate>
<asp:CheckBox ID="cbUser" Runat="server"></asp:CheckBox>
</ItemTemplate>
</asp:TemplateColumn>
<asp:BoundColumn HeaderText="Emp ID" DataField="empid" HeaderStyle-Width="30%"></asp:BoundColumn>
<asp:BoundColumn HeaderText="Emp NO" DataField="empno" HeaderStyle-Width="30%"></asp:BoundColumn>
<asp:BoundColumn HeaderText="Emp Name" DataField="empname" HeaderStyle-Width="35%"></asp:BoundColumn>
</Columns>
</asp:datagrid>我在datagrid设置了模版列并绑定了一个checkbox,看上去datagrid中的checkbox不是单选的
并且当我选中某个checkbox后,要把所在行的emp id传到下个页面去
BorderWidth="1px" CellPadding="1" AutoGenerateColumns="False" Visible="False">
<AlternatingItemStyle CssClass="DTG-Item-1-1"></AlternatingItemStyle>
<ItemStyle CssClass="DTG-Item-1-1"></ItemStyle>
<HeaderStyle CssClass="DTG-Header-1"></HeaderStyle>
<FooterStyle CssClass="DTG-Footer-1"></FooterStyle>
<Columns>
<asp:TemplateColumn HeaderStyle-Width="5%">
<ItemTemplate>
<asp:CheckBox ID="cbUser" Runat="server"></asp:CheckBox>
</ItemTemplate>
</asp:TemplateColumn>
<asp:BoundColumn HeaderText="Emp ID" DataField="empid" HeaderStyle-Width="30%"></asp:BoundColumn>
<asp:BoundColumn HeaderText="Emp NO" DataField="empno" HeaderStyle-Width="30%"></asp:BoundColumn>
<asp:BoundColumn HeaderText="Emp Name" DataField="empname" HeaderStyle-Width="35%"></asp:BoundColumn>
</Columns>
</asp:datagrid>我在datagrid设置了模版列并绑定了一个checkbox,看上去datagrid中的checkbox不是单选的
并且当我选中某个checkbox后,要把所在行的emp id传到下个页面去
foreach(DataGridItem dgiTemp in this.dgUser.Items)
{
ArrayList myList = new ArrayList(dgUser.Items);
CheckBox cbTemp = dgiTemp.Cells[0].FindControl("cbUser") as CheckBox ;
if(cbTemp != null)
{
if(cbTemp.Checked )
{
myList =DataGrid1.Items[dgiTemp].Cells[1].Text; }
}
Response.Redirect("1.aspx?array ="+ myList );
}
写错放循环外面
也拿出循环来
SCRIPT language="JavaScript">
function SetCheckBoxState()
{
var dom=document.all;
var el=event.srcElement;
if(el.tagName=="INPUT"&&el.type.toLowerCase()=="checkbox")
{
for(i=0;i<dom.length;i++)
{
if(dom[i].tagName=="INPUT"&&dom[i].type.toLowerCase()=="checkbox")
{
dom[i].checked=false;
}
}
}
el.checked=!el.checked;
}
</SCRIPT>
后台:
private void dgUser_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
{
if(e.Item.ItemIndex<0) return;
if(e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
{
System.Web.UI.WebControls.CheckBox cbUser;
cbUser=(CheckBox)e.Item.FindControl("cbUser");
cbUser.Attributes.Add("OnClick","SetCheckBoxState()");
}
}
我就是不知道该写到哪个事件里
我有试着写在itemdatabound里面,好像不行,勾选之后一点反应都没有
事件有没注册?
SCRIPT language="JavaScript">
前我少写个<有无加上
你相干的2部分(srtipt | CS)发来看下错那里