结合事件 - 事件处理程序传递

时间:2010-01-13 11:45:08

标签: jquery

我不能为我的生活弄清楚你将如何做到以下几点:

$("select").change(function() {
  var cb = $(this).parent().next().find("input[type=checkbox]");
  $(this).val().length > 0 ? cb.attr('checked', true) : cb.attr('checked', false) 
});
$("input[type=text]").keyup(function() {
  var cb = $(this).parent().next().find("input[type=checkbox]");
  $(this).val().length > 0 ? cb.attr('checked', true) : cb.attr('checked', false) 
});

作为一个功能。真的不喜欢重复,特别是当他们做同样的事情时。

我的jQuery jedi技能不适合这种情况。

1 个答案:

答案 0 :(得分:2)

首先声明函数:

function myFunc() {
   var cb = ...
}

然后添加作业:

$('select').change(myFunc);
$('input[type=text]').keyup(myFunc);