jQuery   发布时间:2022-03-30  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了jQuery on() – 是event.delegateTarget获取on()函数主容器的最佳方法吗?大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
@H_675_2@
我有一个与此类似的 HTML

<div class="ajax_table_container">
    <table>
        <tr>
            <td><a href="ajax.PHP?action=delete&id=1" class="delete_element">deletE</a></td>
        </tr>
        <tr>
            <td><a href="ajax.PHP?action=delete&id=2" class="delete_element">deletE</a></td>
        </tr>
    </table>
</div>

和javascript:

$("div.ajax_table_container").on("click","a.delete_element",function (event) {
    var adr = $(this).attr("href");    
    $(event.delegateTarget).html("TEST");
    return false;
});

在实际应用中,我正在从点击的链接中提供的地址重新加载ajax请求的内容.

我的问题是,我正在使用最好的方法获得主div(使用类ajax_table_container).我在谈论片段:event.delegateTarget.有没有更好的方法在jQuery中获取它? (顺便说一下.我不想在这里使用$(‘div.ajax_table_container’) – 在一个页面上可能有几个这样的div)

FIDDLE

编辑:在得到一些答案并检查谷歌后,我想将自己标记为重复;-)这里:How to get parent selector with jquery.on(‘click’),base on the clicked element

@H_675_2@

解决方法

如果你的目标是获得你挂钩活动的元素,那么这不仅是你最好的选择,而且几乎是你唯一的选择.

一个我不提倡的选项是记住你在事件处理程序关闭的变量中使用的内容

var $container = $("div.ajax_table_container");
$container.on("click",function (event) {
    var adr = $(this).attr("href");    
    $container.html("TEST");
    return false;
});

但是,由于jQuery为您提供了方便delegateTarget,这就是我使用的,除非有充分的理由使用其他东西.将元素引用(而不是选择器)传递给$()的成本根本不是很大,很可能你在处理程序中做的任何事情都会消除它添加的任何开销.

@H_675_2@ @H_675_2@
@H_675_2@
@H_675_2@

大佬总结

以上是大佬教程为你收集整理的jQuery on() – 是event.delegateTarget获取on()函数主容器的最佳方法吗?全部内容,希望文章能够帮你解决jQuery on() – 是event.delegateTarget获取on()函数主容器的最佳方法吗?所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。