相关疑难解决方法(0)

插入在已注册的处理程序之前执行的JQuery单击处理程序

我想在我的应用程序的所有页面上为每个(Button,Anchor,Select)附加一个click事件处理程序,并且该处理程序应该在以html声明的已经附加的处理程序之前运行onclick="return SomeFunction('a','b');".

我在stackoverflow上发现了一个关于预装处理程序的问题,这正是我想要的,问题的链接是: -

Jquery前置单击处理程序

但是,上面的代码不起作用,我怀疑它是否适用于提问者.我根据我的要求编写的代码是: -

<input type="button" value="Click 1" onclick="f2();" />

$(document).ready(function() {
            $("input[type=button]").each(function() {

                // your button
                var btn = $(this);

                // original click handler
                var clickhandler = btn.attr("onclick");
                btn.attr("onclick", "return false;");


                // new click handler
                btn.click(function() {
                    alert('Prepended Handler');
                    clickhandler();
                });
            });
        });

        function f2() {
            alert('Handler declared in HTML');
        }
Run Code Online (Sandbox Code Playgroud)

此代码的输出应为:显示"Prepended Handler"的警报,然后是显示"以HTML格式声明的处理程序"的下一个警报.

但是,实际结果是:只显示第一个警报,而第二个警报不显示.

如果您在此代码中发现任何问题,请告诉我.

而且,如何做到这一点.?

javascript jquery

3
推荐指数
1
解决办法
7060
查看次数

使用JQuery在按钮上添加onclick操作

我有一个按钮,已经有一个onclick事件和一个指定的功能.我希望在它前面添加另一个函数调用.我可以想象应该可以摆弄onclick属性(attr),但我不认为这是最佳实践.

您认为在现有onclick事件上添加函数调用的最佳做法是什么?

jquery

3
推荐指数
2
解决办法
5840
查看次数

标签 统计

jquery ×2

javascript ×1