如何在jquery插入的元素上发生“点击”事件?

迈克尔·杜兰特

我想开启| off元素,使其以粗体显示当前选中的选项,并提供指向另一个选项的链接。一个相当普遍的模式。我已经使行着色本身起作用了,但是提供用于打开和关闭它的链接(或文本)证明是很麻烦的。

单击“开”时,行阴影应打开[有效],然后“开”链接应更改为(粗体)文本,而“关”应为反向链接[无效]。

同样,当单击“关闭”时,行阴影应关闭[works],“关闭”链接应更改为(粗体)文本[works],“开”文本应更改为可以将其打开的链接再次单击时[不起作用]。

单击该链接将发生相反的情况,该链接应成为文本,而该文本则成为链接。大多数情况都发生了,但是我最终得到的链接在ui中没有执行任何操作,或者似乎向我显示了任何控制台错误。

我从以下HAML开始(HTML也在下面显示)

%span.spaced
  Group Shading:
  %span#group_shading_toggle
    - if session[:group_shading] == 'true'
      %b  
        On
      %a{href: '#', id: 'row_colors_off'}
        Off
    - else
      %a{href: '#', id: 'row_colors_on'}
        On
      %b  
        Off

并且我有以下JavaScript:

$(function()
{
    $("a#row_colors_on").click(function()
    {
        $(".row_color_group_1").addClass("color_group_1");
        $(".row_color_group_2").addClass("color_group_2");
        $(".row_color_group_3").addClass("color_group_3");
        // Replace the "on" toggle link with plain "on" and the group shading "off" *text* with link to off
        $("#group_shading_toggle").html("On <a href='#' id='row_colors_off'>Off</a>");
        $.get('/set_group_shading?show=true').defaultPrevented;
     });
});

$(function()
{
    $("a#row_colors_off").click(function()
    {
       $(".row_color_group_1").removeClass("color_group_1");
       $(".row_color_group_2").removeClass("color_group_2");
       $(".row_color_group_3").removeClass("color_group_3");
       // Replace the "off" toggle link with a "off" text and the group shading "on" link with *text* "on"
       $("#group_shading_toggle").html("<a href='#' id='row_colors_on'>On</a> off");
       $.get('/set_group_shading?show=false');
    });
});

生成的html'before'是:

<span class="spaced">


                      Group Shading:
                    …

    <span id="group_shading_toggle">
        <a id="row_colors_on" href="#">


                                  On


        </a>
        Off
    </span>

</span>

点击后生成的html“之后”为:

<span class="spaced">


                      Group Shading:
                    …

    <span id="group_shading_toggle">

        On 

        <a id="row_colors_off" href="#">Off</a>
    </span>

</span>

但是,关闭动态生成的“关闭”链接

即使看起来与

<a id="row_colors_off" href="#">


                          Off


</a>

如果最初针对该状态呈现,则可以正常工作。

为什么不显示来自js的链接不起作用?

我提供了比平常更多的代码,以帮助其他人尝试类似的切换按钮并寻找各种解决方案。

像素地球

click()绑定只会将处理程序附加到已经存在的元素上。它不会绑定到将来创建的元素。为此,您将使用on()创建一个“委托”绑定

试试看。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在禁用的元素上触发点击事件

来自分类Dev

同一元素上的点击和悬停事件发生冲突

来自分类Dev

如何在点击事件中找到jQuery中的上一个元素?

来自分类Dev

如何在jQuery插入的元素上发生“点击”事件?

来自分类Dev

如何在点击事件中更改引导插入符号指向

来自分类Dev

如何在骨干点击事件中获取“此”元素?

来自分类Dev

如何在子元素上触发点击事件

来自分类Dev

如何在放置在画布上的图像上获取点击事件

来自分类Dev

如何使具有高Z索引的元素允许下面的元素发生点击事件?

来自分类Dev

在点击事件上扩展jQuery

来自分类Dev

如何返回发生点击事件的代码

来自分类Dev

如何在Page Control Swift上捕获点击事件

来自分类Dev

如何在jQuery Mobile中的释放点击事件上获取滑块值?

来自分类Dev

同一元素上的点击和悬停事件发生冲突

来自分类Dev

如何在点击事件中找到jQuery中的上一个元素?

来自分类Dev

如何在链接点击事件jQuery中调用onbeforeunload?

来自分类Dev

如何获取jquery中li元素的点击事件?

来自分类Dev

如何在点击事件中从jQuery函数更改链接文本

来自分类Dev

如何将点击事件绑定到元素,是在点击事件上创建的?

来自分类Dev

如何在事件发生反应时访问当前元素?

来自分类Dev

如何在GMSPanoramaView上获取触摸事件/点击事件

来自分类Dev

如何将点击事件附加到我的jQuery插件中的元素上?

来自分类Dev

如何在重叠元素上重新触发jQuery悬停事件?

来自分类Dev

如何在Unity Slider UI上停用点击事件?

来自分类Dev

如何在 JavaScript 中的点击事件上添加圆圈?

来自分类Dev

jquery 监听动态创建的元素上的点击事件

来自分类Dev

如何在syncfusion列表视图项上设置点击事件?

来自分类Dev

如何在jquery(ui)中刷新元素上的事件

来自分类Dev

如何在 PreferenceCategory 的tilte 上获得点击事件?

Related 相关文章

  1. 1

    如何在禁用的元素上触发点击事件

  2. 2

    同一元素上的点击和悬停事件发生冲突

  3. 3

    如何在点击事件中找到jQuery中的上一个元素?

  4. 4

    如何在jQuery插入的元素上发生“点击”事件?

  5. 5

    如何在点击事件中更改引导插入符号指向

  6. 6

    如何在骨干点击事件中获取“此”元素?

  7. 7

    如何在子元素上触发点击事件

  8. 8

    如何在放置在画布上的图像上获取点击事件

  9. 9

    如何使具有高Z索引的元素允许下面的元素发生点击事件?

  10. 10

    在点击事件上扩展jQuery

  11. 11

    如何返回发生点击事件的代码

  12. 12

    如何在Page Control Swift上捕获点击事件

  13. 13

    如何在jQuery Mobile中的释放点击事件上获取滑块值?

  14. 14

    同一元素上的点击和悬停事件发生冲突

  15. 15

    如何在点击事件中找到jQuery中的上一个元素?

  16. 16

    如何在链接点击事件jQuery中调用onbeforeunload?

  17. 17

    如何获取jquery中li元素的点击事件?

  18. 18

    如何在点击事件中从jQuery函数更改链接文本

  19. 19

    如何将点击事件绑定到元素,是在点击事件上创建的?

  20. 20

    如何在事件发生反应时访问当前元素?

  21. 21

    如何在GMSPanoramaView上获取触摸事件/点击事件

  22. 22

    如何将点击事件附加到我的jQuery插件中的元素上?

  23. 23

    如何在重叠元素上重新触发jQuery悬停事件?

  24. 24

    如何在Unity Slider UI上停用点击事件?

  25. 25

    如何在 JavaScript 中的点击事件上添加圆圈?

  26. 26

    jquery 监听动态创建的元素上的点击事件

  27. 27

    如何在syncfusion列表视图项上设置点击事件?

  28. 28

    如何在jquery(ui)中刷新元素上的事件

  29. 29

    如何在 PreferenceCategory 的tilte 上获得点击事件?

热门标签

归档