加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net – 更改事件和IE8的jQuery问题

发布时间:2020-12-15 19:57:49 所属栏目:asp.Net 来源:网络整理
导读:jQuery 1.4.2中存在一个错误,当使用DOM事件和jQuery事件时,select-element上的change事件会被触发两次,这只在IE7 / 8上发生. 这是测试代码: htmlhead script src="http://code.jquery.com/jquery-1.4.2.js" type="text/javascript"/script script type="tex
jQuery 1.4.2中存在一个错误,当使用DOM事件和jQuery事件时,select-element上的change事件会被触发两次,这只在IE7 / 8上发生.
这是测试代码:
<html>

<head>
    <script src="http://code.jquery.com/jquery-1.4.2.js" type="text/javascript"></script>

    <script type="text/javascript">

       jQuery(document).ready(function() {

         jQuery(".myDropDown").change(function() {


         });

       });

    </script>

</head>

<body>
    <select class="myDropDown" onchange="alert('hello');">
          <option>1</option>
          <option>2</option>
          <option>3</option>
          <option>4</option>
        </select>
</body>

</html>

更新:
问题的另一种观点,实际上这是我们的应用程序的真正问题.在没有用DOM事件触及select元素的选择器上绑定实时更改事件也会导致双击.

<html>

<head>
    <script src="http://code.jquery.com/jquery-1.4.2.js" type="text/javascript"></script>

    <script type="text/javascript">

       jQuery(document).ready(function() {

         jQuery(".someSelectThatDoesNotExist").live("change",function() {


         });

       });

    </script>

</head>

<body>
    <select class="myDropDown" onchange="alert('hello');">
          <option>1</option>
          <option>2</option>
          <option>3</option>
          <option>4</option>
        </select>
</body>

</html>

实际错误的票:http://dev.jquery.com/ticket/6593

这在我们的应用程序中给我们带来了很多麻烦,因为我们使用混合了jQuery的ASP.NET事件,并且一旦你在任何元素上挂起一个change事件,每个select(下拉列表)都会遇到这个双重触发问题.

在这个问题得到解决之前,有没有人知道解决这个问题的方法?

解决方法

我讨厌从死里复活这个问题,但是jquery最终修复了最近发布的1.7版本中的这个错误.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读