jquery toggle()在克隆内容中发出问题

时间:2016-05-16 14:43:29

标签: jquery clone togglebutton

我有一个正在克隆的类,因此可以完成多个输入。在这内部是一个问题区域,隐藏内容,我想显示点击是按钮。目前这个切换不起作用。我假设它与克隆类内部有关,但我不知道理解为什么。 示例:https://jsfiddle.net/484u32qn/6/

$(document).ready(function() {
  $(".issuesshow").click(function() {
  $(".plantarea").toggle();
  });

  $(".ft1issues").click(function() {
  $(".ft1area").toggle();
  });

  $(".ft2issues").click(function() {
  $(".ft2area").toggle();
  });

  $('.button-add').click(function() {
  //we select the box clone it and insert it after the box
  $('.box.assembly').clone().show().removeClass("assembly").insertAfter(".box:last");
  }).trigger("click");

  $(document).on("click", ".button-remove", function() {
  $(this).closest(".box").remove();
  });

});

2 个答案:

答案 0 :(得分:0)

这是因为当您注册事件处理程序时,尚未添加该行。

更改订单,它会起作用。

$(document).ready(function() {
    $('.button-add').click(function() {
    //we select the box clone it and insert it after the box
    $('.box.assembly').clone().show().removeClass("assembly").insertAfter(".box:last");
   }).trigger("click");

   $(".issuesshow").click(function() {
        $(".plantarea").toggle();
   });

   $(".ft1issues").click(function() {
       $(".ft1area").toggle();
   });

   $(".ft2issues").click(function() {
       $(".ft2area").toggle();
   });

   $(document).on("click", ".button-remove", function() {
       $(this).closest(".box").remove();
   });

});

注意:clone本身不会复制事件处理程序

答案 1 :(得分:0)

使用以下语法动态更改

  $(document).on('click', '.issuesshow', function(){
            $(this).closest('.prodchild').find('.plantarea').toggle();
  });

https://jsfiddle.net/484u32qn/13/