JQuery取消和注册对象Click事件同时防止多播委托
来源:互联网 发布:麦子学院软件测试 编辑:程序博客网 时间:2024/06/06 02:14
页面表单:
<div> @{ UserInfo userInfo = ViewBag.UserInfo as UserInfo; List<UserAction> list = ViewBag.UserAction as List<UserAction>; //数据查询到内存中,提高性能 } <input type="hidden" id="UserId" value="@userInfo.UserId"/> <table border="1"> <thead> <th>权限名称</th> <th>设置</th> </thead> <tbody> @foreach (var item in Model) { <tr> <td>@item.ActionTitle</td> <td> <input type="radio" name="@item.ActionId" @if (list.Where(ua=>(ua.ActionId==item.ActionId)&&(ua.IsAllow==true)).Count()>0) { @(" checked='checked'"); } value="1"/>允许 <input type="radio" name="@item.ActionId" @if (list.Where(ua=>(ua.ActionId==item.ActionId)&&(ua.IsAllow==false)).Count()>0) { @(" checked='checked'"); } value="-1"/>拒绝 <input type="radio" name="@item.ActionId" @if (list.Where(ua=>(ua.ActionId==item.ActionId)).Count()==0) { @(" checked='checked'"); } value="0"/>取消 </td> </tr> } </tbody> </table> </div>
页面预览:
如上图所示,
要使上图中的radio点击的同时触发点击事件,同时取消该点击对象的点击事件,又让另外两个兄弟节点对象注册点击事件
因为JS不支持事件多播委托,但是JQuery支持,所以在取消注册当前点击对象的Click事件的同时也要对其他两个兄弟节点radio取消Click事件后重新绑定。
请忽略与服务端交互的代码!
JS代码:
$(function(){$(':radio').bind('Click',Click1);//给所有radio绑定单击事件//$(':radio:not(:checked)').bind('Click',Click1);//仅给未选择的radio绑定单击事件,也能解决问题});function Click1(){alert('1');@*//收集数据var uid = $('#userId').val();var aid = $(this).attr('name');var allow = $(this).val();//发送异步请求$.post('@Url.Action("SetAction","UserInfo1")',{uid:uid,aid:aid,allow:allow},function(msg){if(msg!="ok"){alert('分配否决失败,请稍后再试');}});*@//处理绑定事件,防止用户点击多次已选中的单选按钮,从而进行多次请求。$(this).unbind('click').siblings().unbind('click').bind('click',Click1);}
0 0
- JQuery取消和注册对象Click事件同时防止多播委托
- jquery click事件注册释疑
- JQuery document click 中防止事件冒泡
- jquery遍历ul注册click事件
- Dom对象事件注册和取消(addEventListener/attachEvent)
- Dom对象事件注册和取消(addEventListener/attachEvent)
- jquery事件有关问题!对象 click和document click冲突有关问题
- JQuery 多个ID对象绑定一个click事件
- onclick事件 和jQuery 事件 - click() 方法
- jquery 常规绑定事件click与on委托绑定测试
- 事件对象和事件委托
- javascript中用Jquery注册button的click事件不能响应
- jquery click嵌套 事件重复注册 多次执行的问题解决
- jQuery事件-委托机制、事件对象
- jquery取消和绑定事件
- 14 C# 第十三章 事件和委托(一) 多播委托的问题
- 委托实例和多播委托
- c# 委托和多播委托
- ubuntu下导入导出.sql
- window平台创建GYP构建环境笔记
- Android之网络编程(二)使用 HttpURLConnection
- if脚本linux
- Android SDK镜像服务器
- JQuery取消和注册对象Click事件同时防止多播委托
- Linux FTP服务器 vsftp
- spring+spring mvc +mybatis项目创建
- Ajax原生态
- IOS截屏一个UIView,以png或者jpg格式保存到指定目录下
- Android webview的使用
- Access与SQL中的IsNull(),IS NULL的区别
- python字符串连接效率比较(使用+连接)
- 密谍伙伴(X Company)