你那个c#中判断复选框的选中选项问题 checkbox的值是绑定到数据库吗
展开全部
一般使用复选框都是为了批量操作,,例如批量删除,在批量删除的时候,复选框绑定的是你这条数据的ID (也就是这条数据在数据库开面的ID)然后在对其进行操作,给你段我我批量删除数据的代码吧:
function che() {
var checks = window.document.getElementById("cheks");
if (checks.checked == true) {
chAll();
}
else
RemoveAll();
}
function chAll() {
var selobj = document.getElementsByName("chek");
for (var i = 0; i < selobj.length; i++) {
selobj[i].checked = true;
}
}
function RemoveAll() {
var selobj = document.getElementsByName("chek");
for (var i = 0; i < selobj.length; i++) {
selobj[i].checked = false;
}
}
function delectAll(id) {
var items = "";
var selobj = document.getElementsByName("chek");
for (var i = 0; i < selobj.length; i++) {
if (selobj[i].checked == true) {
items = items + selobj[i].value + ",";
}
}
debugger;
if (items.length <= 0) {
alert("请选择要退寝的人员!!!");
return false;
}
else {
if (id == "Batch") {
if (confirm("确定退寝吗?")) {
document.getElementById("iditems").value = items;
return true;
}
}
return false;
}
}
这个是我的js
前台页面:
<asp:LinkButton ID="Batch" runat="server" Font-Underline="false"
OnClientClick='return delectAll(this.id)' CssClass="style" Font-Size="13px"
onclick="Batch_Click">批量退寝</asp:LinkButton>
<asp:HiddenField ID="iditems" runat="server" />//这是一个隐藏域:目的是存储所有选定的值
我用的是gridview控件
<asp:GridView ID="GridRoomOut" runat="server" AutoGenerateColumns="False" Width="100%"
AllowPaging="True" OnPageIndexChanging="GridView1_PageIndexChanging" PageSize="28"
Font-Size="13px" CellPadding="4" ForeColor="#333333" GridLines="None">
<AlternatingRowStyle BackColor="White" ForeColor="#284775" />
<Columns>
<asp:TemplateField >
<HeaderTemplate>
//这个是为了实现 全选 和反选的
<input name="cheks" id="cheks" type="checkbox" onclick="che()" />
</HeaderTemplate>
<ItemTemplate>
//这个是绑定数据的ID的
<input name="chek" id="chek" type="checkbox" value='<%#(Convert.ToString( Eval("ID"))) %>' />
</ItemTemplate>
</asp:TemplateField>
在后台:
后台删除:
protected void Batch_Click(object sender, EventArgs e)
{
//接受前台隐藏域的值 也就是说前台选中chekbox所绑定的ID值
string idtems = Request.Form["iditems"].ToString().TrimEnd(',');
string time = DateTime.Now.Date.ToShortDateString();
string[] ids = null;
if(idtems!="")
{
ids = idtems.Split(',');
}
for (int i = 0; i < ids.Length; i++)
{
int id = int.Parse(ids[i].ToString());
if (dal.RoomOutUpdate(id,time) > 0)
{
continue;
}
}
ClientScript.RegisterStartupScript(GetType(), "", "alert('退寝成功!'); window.location.href = window.location.href;", true);
}
不明白的 你可以继续问我 希望能帮到你
function che() {
var checks = window.document.getElementById("cheks");
if (checks.checked == true) {
chAll();
}
else
RemoveAll();
}
function chAll() {
var selobj = document.getElementsByName("chek");
for (var i = 0; i < selobj.length; i++) {
selobj[i].checked = true;
}
}
function RemoveAll() {
var selobj = document.getElementsByName("chek");
for (var i = 0; i < selobj.length; i++) {
selobj[i].checked = false;
}
}
function delectAll(id) {
var items = "";
var selobj = document.getElementsByName("chek");
for (var i = 0; i < selobj.length; i++) {
if (selobj[i].checked == true) {
items = items + selobj[i].value + ",";
}
}
debugger;
if (items.length <= 0) {
alert("请选择要退寝的人员!!!");
return false;
}
else {
if (id == "Batch") {
if (confirm("确定退寝吗?")) {
document.getElementById("iditems").value = items;
return true;
}
}
return false;
}
}
这个是我的js
前台页面:
<asp:LinkButton ID="Batch" runat="server" Font-Underline="false"
OnClientClick='return delectAll(this.id)' CssClass="style" Font-Size="13px"
onclick="Batch_Click">批量退寝</asp:LinkButton>
<asp:HiddenField ID="iditems" runat="server" />//这是一个隐藏域:目的是存储所有选定的值
我用的是gridview控件
<asp:GridView ID="GridRoomOut" runat="server" AutoGenerateColumns="False" Width="100%"
AllowPaging="True" OnPageIndexChanging="GridView1_PageIndexChanging" PageSize="28"
Font-Size="13px" CellPadding="4" ForeColor="#333333" GridLines="None">
<AlternatingRowStyle BackColor="White" ForeColor="#284775" />
<Columns>
<asp:TemplateField >
<HeaderTemplate>
//这个是为了实现 全选 和反选的
<input name="cheks" id="cheks" type="checkbox" onclick="che()" />
</HeaderTemplate>
<ItemTemplate>
//这个是绑定数据的ID的
<input name="chek" id="chek" type="checkbox" value='<%#(Convert.ToString( Eval("ID"))) %>' />
</ItemTemplate>
</asp:TemplateField>
在后台:
后台删除:
protected void Batch_Click(object sender, EventArgs e)
{
//接受前台隐藏域的值 也就是说前台选中chekbox所绑定的ID值
string idtems = Request.Form["iditems"].ToString().TrimEnd(',');
string time = DateTime.Now.Date.ToShortDateString();
string[] ids = null;
if(idtems!="")
{
ids = idtems.Split(',');
}
for (int i = 0; i < ids.Length; i++)
{
int id = int.Parse(ids[i].ToString());
if (dal.RoomOutUpdate(id,time) > 0)
{
continue;
}
}
ClientScript.RegisterStartupScript(GetType(), "", "alert('退寝成功!'); window.location.href = window.location.href;", true);
}
不明白的 你可以继续问我 希望能帮到你
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你在问什么?需求是什么?说明白点
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询