B/S 一些CheckBox控件 Button提交时判断CheckBox选中状态checked属性

赵昌宇 2012-06-01 11:50:26

我用图片展示出了页面的效果


我希望实现的功能是 判断页面上的 CheckBox控件上的属性 checked

Button导出数据事件 时先判断至少1个CheckBox是选中状态 并提示

javascript或者jquery 或者 后台代码实现也行!

前台代码如下

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="SWDataMonitorExport.aspx.cs" Inherits="CTWebPlatform.DataMonitoring.SWDataMonitorExport" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>导出数据</title>
<link href="../Styles/Site.css" rel="stylesheet" type="text/css" />
<script language="javascript" type="text/javascript">
function unselectall() {
if (document.myform.chkAll.checked) {
document.myform.chkAll.checked = document.myform.chkAll.checked & 0;
}
}
function CheckAll(form) {
for (var i = 0; i < form.elements.length; i++) {
var e = form.elements[i];
if (e.Name != 'chkAll' && e.disabled == false)
{ e.checked = form.chkAll.checked; }
}
}
</script>
</head>


<body>
<form id="form1" runat="server">

<div style="background-color:White;">
<br />
<table width="100%" class="style-table">
<tr>
<td class="style1">
<div class="style-saearch">
<div class="search2to">
<table border="0" cellpadding="0" cellspacing="0" class="Table_Search">
<tr>
<td>
<span class="MarginLeft10">


</span>
<asp:RadioButton ID="RadioExcel" runat="server" Text="Microsoft Excel 工作表"
GroupName="Export" Checked="True" />
</td>
<td >

<asp:RadioButton ID="RadioWord" runat="server" Text="Microsoft Word 文档"
GroupName="Export" />

</td>
<td>

<asp:RadioButton ID="RadioTXT" runat="server" Text="超文本网页 Html"
GroupName="Export" />

</td>
<td>在线浏览 

</td>
<td>

 </td>
<td >

<asp:Button ID="ButtonHTTP" runat="server" CssClass="Button02" Height="24px"
Text="将数据导出" Width="84px" onclick="ButtonHTTP_Click" />

</td>
</tr>
</table>
</div>

<div class="MarginLeft10">

<span class="MarginLeft5">请选择需要导出的"列"名称</span></div>
</div>

<div class="marginab BorderGray">

<table style="width:100%; height: 300px;">
<tr>
<td>
<span class="MarginLeft20"></span><input name='chkAll' type='checkbox' id='chkAll' onclick='CheckAll(this.form)' value='checkbox'/>全选√
</td>
<td> 
</td>
<td> 
</td>
<td> 
</td>
<td> 
</td>
</tr>
<tr>
<td>
<span class="MarginLeft20"></span>
<asp:CheckBox ID="CheckScrewPumpWellName" runat="server" Text="螺杆泵名称" />
</td>
<td>
<span class="MarginLeft20"></span>
<asp:CheckBox ID="CheckDTUID" runat="server" Text="测电仪编号" />
</td>
<td>
<span class="MarginLeft20"></span>
<asp:CheckBox ID="CheckOrgName" runat="server" Text="所属井场" />
</td>
<td>
<span class="MarginLeft20"></span>
<asp:CheckBox ID="CheckSampleTime" runat="server" Text="采集时间" />
</td>
<td>
<span class="MarginLeft20"></span>
<asp:CheckBox ID="CheckColumn1" runat="server" Text="启停机" />
</td>
</tr>
<tr>
<td>
<span class="MarginLeft20"></span>
<asp:CheckBox ID="CheckdPF" runat="server" Text="功率因数" />
</td>
<td>
<span class="MarginLeft20"></span>
<asp:CheckBox ID="CheckdFreq" runat="server" Text="频率(hz)" />
</td>
<td>
<span class="MarginLeft20"></span>
<asp:CheckBox ID="CheckdSpeed" runat="server" Text="转速(/Min)" />
</td>
<td><%--Column1--%>
<span class="MarginLeft20"></span>
<asp:CheckBox ID="CheckColumn2" runat="server" Text="是否停机" />
</td>
<td> 

</td>
</tr> </tr>
</table>
</div>

</td>
</tr>
</table>
<br />
</div>
</form>
</body>
</html>

...全文
271 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
xmhxjjq 2012-06-01
  • 打赏
  • 举报
回复
foreach (Control con in this.Page.Form.Controls)
{
if (con.GetType() == typeof(CheckBox))
{
if ((con as CheckBox).Checked)
{
Response.Write("a");
}
}
}
licai1210 2012-06-01
  • 打赏
  • 举报
回复

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head id="Head1" runat="server">
<title>导出数据</title>
<link href="../Styles/Site.css" rel="stylesheet" type="text/css" />

<script language="javascript" type="text/javascript">
function unselectall() {
if (document.myform.chkAll.checked) {
document.myform.chkAll.checked = document.myform.chkAll.checked & 0;
}
}
function CheckAll(form) {
for (var i = 0; i < form.elements.length; i++) {
var e = form.elements[i];
if (e.Name != 'chkAll' && e.disabled == false)
{ e.checked = form.chkAll.checked; }
}
}
function getCheckCount() {
var inputs = document.getElementById('tab').getElementsByTagName('input');
for (var i = 0; i < inputs.length; i++) {
if (inputs[i].type == 'checkbox' && inputs[i] != 'chkAll' && inputs[i].checked) {
return true;
}
}
alert('最少选择一项有效数据');
return false;
}
</script>

</head>
<body>
<form id="form1" runat="server">
<div style="background-color: White;">
<br />
<table width="100%" class="style-table">
<tr>
<td class="style1">
<div class="style-saearch">
<div class="search2to">
<table border="0" cellpadding="0" cellspacing="0" class="Table_Search">
<tr>
<td>
<span class="MarginLeft10"></span>
<asp:RadioButton ID="RadioExcel" runat="server" Text="Microsoft Excel 工作表" GroupName="Export"
Checked="True" />
</td>
<td>
<asp:RadioButton ID="RadioWord" runat="server" Text="Microsoft Word 文档" GroupName="Export" />
</td>
<td>
<asp:RadioButton ID="RadioTXT" runat="server" Text="超文本网页 Html" GroupName="Export" />
</td>
<td>
在线浏览 
</td>
<td>
 
</td>
<td>
<asp:Button ID="ButtonHTTP" runat="server" OnClientClick="return getCheckCount()"
CssClass="Button02" Height="24px" Text="将数据导出" Width="84px" />
</td>
</tr>
</table>
</div>
<div class="MarginLeft10">
<span class="MarginLeft5">请选择需要导出的"列"名称</span></div>
</div>
<div class="marginab BorderGray">
<table id="tab" style="width: 100%; height: 300px;">
<tr>
<td>
<span class="MarginLeft20"></span>
<input name='chkAll' type='checkbox' id='chkAll' onclick='CheckAll(this.form)' value='checkbox' />全选√
</td>
<td>
 
</td>
<td>
 
</td>
<td>
 
</td>
<td>
 
</td>
</tr>
<tr>
<td>
<span class="MarginLeft20"></span>
<asp:CheckBox ID="CheckScrewPumpWellName" runat="server" Text="螺杆泵名称" />
</td>
<td>
<span class="MarginLeft20"></span>
<asp:CheckBox ID="CheckDTUID" runat="server" Text="测电仪编号" />
</td>
<td>
<span class="MarginLeft20"></span>
<asp:CheckBox ID="CheckOrgName" runat="server" Text="所属井场" />
</td>
<td>
<span class="MarginLeft20"></span>
<asp:CheckBox ID="CheckSampleTime" runat="server" Text="采集时间" />
</td>
<td>
<span class="MarginLeft20"></span>
<asp:CheckBox ID="CheckColumn1" runat="server" Text="启停机" />
</td>
</tr>
<tr>
<td>
<span class="MarginLeft20"></span>
<asp:CheckBox ID="CheckdPF" runat="server" Text="功率因数" />
</td>
<td>
<span class="MarginLeft20"></span>
<asp:CheckBox ID="CheckdFreq" runat="server" Text="频率(hz)" />
</td>
<td>
<span class="MarginLeft20"></span>
<asp:CheckBox ID="CheckdSpeed" runat="server" Text="转速(/Min)" />
</td>
<td>
<%--Column1--%>
<span class="MarginLeft20"></span>
<asp:CheckBox ID="CheckColumn2" runat="server" Text="是否停机" />
</td>
<td>
 
</td>
</tr>
</table>
</tr>
</table>
<br />
</div>
</form>
</body>
</html>
试试
静缘 2012-06-01
  • 打赏
  • 举报
回复

JQUERY实现方法:
//Button1 提交按钮的ID
$("#Button1").bind("click", function () {
var cbxs = $("#div1 input:checked"); //获取ID为DIV1的元素下面所有选中的复选框
//alert(cbxs.length); //提示选中了几个
if (cbxs.length > 0) {
return true; }
else { alert('请先选择!'); return false; }
});
  • 打赏
  • 举报
回复
循环遍历
赵昌宇 2012-06-01
  • 打赏
  • 举报
回复
我这个不是从数据库读取数据 datatable
以前没弄过这类判断 非常迷茫...
我就想要一个 怎么遍历的方法
你能把代码 写的详细点吗 有点不理解!
谢谢!
xmhxjjq 2012-06-01
  • 打赏
  • 举报
回复
从数据库里面读的数据么- - 如果是的话 那么就换成CheckBoxList.这个就很快了

不然你就用foreach(control con in page.Controls)
if(con == "CheckBox")
if(con.Checked)

大致是这样的。 反正效果差不多。

62,041

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧