我之所以需要实现我在这里提出的问题有点令人费解,因为我正在使用已经有一些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()
上添加某种回调?我尝试了一些不同的语法,但无法弄清楚。
答案 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
处理的匿名函数!)