更改后如何调用函数()

时间:2012-11-22 21:06:47

标签: jquery

我之所以需要实现我在这里提出的问题有点令人费解,因为我正在使用已经有一些jQuery内容的CMS工作。但基本上,当用户点击链接或从下拉列表中选择(他们都做同样的事情)时,我需要调用2个函数,让我们称它们为foo()bar()。 / p>

我可以在用户点击时将其发挥作用:

$('.links').on("click", "a", function() {
    $(".dropdown select").change();
    bar();
    return false;
});

$(".dropdown select").change(function() {
    $("select option:selected").each(function () {
        foo();
    });
});

问题是需要在change()事件之后调用bar()。我无法在change()事件中调用bar()。当用户点击时,没问题。但我无法确定如何直接从bar()拨打change(),但change()中的所有内容都已完成。

有没有办法在change()上添加某种回调?我尝试了一些不同的语法,但无法弄清楚。

1 个答案:

答案 0 :(得分:1)

$('.links').on('click', 'a', function(){
   myFunc(); 
   return false;
});
$('.dropdown select').on('change', myFunc);

function myFunc(){
  $('select option:selected').each(function(){
    foo();
  });
  bar();
}

为什么不添加第三个函数来处理这种行为? (并且在技术上保持相同数量的函数调用,因为我们可以删除由select change处理的匿名函数!)