ie中的radio click()不能触发radio的change事件
来源:互联网 发布:cad网络机柜 交换机 编辑:程序博客网 时间:2024/05/16 06:44
jquery版本:1.7.2
浏览器版本:ie8
测试代码如下,实现的功能是页面加载后,点击单选框的第一项。使之成为选中的状态
<html lang="zh-cn"><head> <meta charset="utf-8"></head> <body> <input type="radio" name="gender" value="female">男 <input type="radio" name="gender" value="male">女 <!--1.7.2--> <script src="https://code.jquery.com/jquery-1.7.2.min.js" integrity="sha256-R7aNzoy2gFrVs+pNJ6+SokH04ppcEqJ0yFLkNGoFALQ=" crossorigin="anonymous"></script> <!--<script src="https://code.jquery.com/jquery-1.12.4.min.js" integrity="sha256-ZosEbRLbNQzLpnKIkEdrPv7lOy9C27hHQ+Xp8a4MxAQ=" crossorigin="anonymous"></script>--> <script> $("input[name=gender]").on('change',function(){ alert($(this).val()); }); $("input[name=gender]").eq(0).click(); </script> </body></html>
以上代码在ie8中不生效,对话框不会弹出,改正方法有2种:
1. 改变jquery的版本,使用新版本的jquery就会弹出对话框。这是jquery1.7.2的bug。
2. 将radio的change事件,变成click事件。这个时候就需要判断单选框的状态了,代码变成下面这样:
<script> $("input[name=gender]").on('click',function(){ if($(this).prop('checked')){ alert($(this).val()); } }); $("input[name=gender]").eq(0).prop('checked',true).click(); </script>
在项目开发中,因为历史原因,不能升级jquery版本,只能采取第二种方法,
0 0
- ie中的radio click()不能触发radio的change事件
- 在IE中关于Radio和Checkbox在JQuery中的change事件的立即触发
- radio change事件
- jquery 多个radio的click事件
- jquery 多个radio的click事件
- IE下radio的onchange事件焦点移除方可触发问题
- IE下radio的onchange事件移除焦点后方可触发问题
- Radio选项选中触发事件
- jquery获取选中单选按钮radio的值,监听type=radio的click事件
- jQuery 当选中input的radio时触发的事件
- ios 不能触发click事件
- radio的onchange事件
- 关于jQuery的click事件不能触发的问题.
- 动态拼接的click事件不能被触发
- 关于动态添加的元素不能触发click事件
- input type为checkbox或radio时的click默认事件
- jquery单选框radio绑定click事件实现方法
- 用jquery给Struts2的<s:radio />标签添加change事件
- 内核编译 之 使用kernel-package编译内核imgage包
- 【GDOI2014模拟】网格 题解+代码
- Bootstrap网格系统
- HDU 1787 GCD Again
- Bootstrap菜单导航
- ie中的radio click()不能触发radio的change事件
- 斯坦福cs224d(深度学习在自然语言处理上的应用)Lecture 2
- Java(代码块)
- jquery的each循环问题
- C++中virtual与inline Debug与Release选项 const 与 #define
- mongodb 不重复添加数组方法
- 交叉编译dbus模块到Qt 遇到的错误及解决
- 修改Struts2的struts.xml配置文件位置
- 第十六周--阅读程序