使用jquery对事件进行OR功能

时间:2011-03-26 06:33:04

标签: php ajax jquery

我有下拉列表和onchange事件我有一个ajax调用

$('#id').change(function() {
  // ajax call
});

但我希望调用ajax调用:

  • onchange
  • 的onload

我的逻辑有点像这样:

<script>
$function({

   myfunction();

   $('#id').change(function() {
      myfunction();
    });
});

function myfunction(){
// ajax call
}
</script>

但是有没有任何有效的方法来执行此操作,任何调用句柄的jquery事件都执行OR功能,如下所示:

if (onchange || onload)
// ajax call

我为标题道歉。

2 个答案:

答案 0 :(得分:0)

多个事件

通过将每个事件类型用空格分隔,可以一次绑定多个事件类型:

$('#foo').bind('mouseenter mouseleave', function() {
  $(this).toggleClass('entered');
});

来自jquery api。

答案 1 :(得分:0)

由于您希望事件绑定在两个单独的对象上,而不仅仅是两个单独的事件,因此实际上没有比您编写的更好的方法。如果要将两个事件绑定到同一元素,可以执行以下操作:

  <script type="text/javascript">
    $(function()
    {
      $('#testElem').bind('load change', function()
      {
        $('body').append('I am fired!');
      });
    });
  </script>

不幸的是,<select>在页面加载时不会触发加载事件,因此您会被卡住。