• jQuery中增加新元素后没法响应原有的事件


    相信很多朋友在使用jQuery的append方法来增加一个新元素后,新的元素却无法响应元素已经定义好的事件程序。

    $(document).ready(function(){
    	
    	$(".xz").click(function()//单击选中某个单元
    	{
    		alert($(this).text());
    	});
    }
    

    上面的代码是响应元素中含有class=xz的,如果我用append()方法增加了一个含有class=xz的元素,该元素却无

    法响应$(".xz").click()事件。

    原因是$(document).ready(function(){}在网页载入时根据存在的网页结构解析元素的事件绑定,从而用append

    方法新增加的元素没有绑定原来的事件,故不能响应原有的事件。

    解决方法是:在使用append方法中,为元素重新绑定事件,即:

    $(document).ready(function(){
            $(".xz").click(function()
            {
                  $("#aa").append("<span class='xz'>1111</span>");
             
    	      $(".xz").click(function()//单击选中某个单元
    	      {
    		 alert($(this).text());
    	      });
             }
    }
    

    上面新增加的<span class='xz'>1111</span> 能够响应$(".xz").click()单击事件,从而弹出提示框。



    ----------------------------------------------------------------------
    “我可以接受失败,但绝对不能接受自己未曾奋斗过。”--迈克尔-乔丹
    “I can accept failure, but I can't accept not trying.”--Michael Jordan.
  • 相关阅读:
    weblogic.xml 精妙设置
    mysql --> select * from Employee group by name这样的语法有什么意义?
    oracle pctfree和pctused详解
    超详细 SpringMVC @RequestMapping 注解使用技巧
    Spring 注解概览
    Js替换字符串中的所有空格
    面试题精选
    Axure RP Extension for Chrome修复
    【javascript】获取 格式化时间
    万能清除浮动
  • 原文地址:https://www.cnblogs.com/beyondfengyu/p/2976741.html
Copyright © 2020-2023  润新知