0

我正在尝试运行一个仅在以下情况下执行的功能:1)已选择/更改了一个单选复选框或 2)更改了选择菜单时

我对两者都有逻辑..

jQuery('.myselect').change(function(e) {
  alert('do something');
});

jQuery('mycheckbox:checked').each(function() {
  alert('do something');
});

如果选择已更改或单选框已被选择/更改,我该如何修改它以运行警报()?

更新 这似乎有效.. 将 do_ajax 类放在选择和复选框上并运行以下命令。

    jQuery('.do_ajax').change(function(e) {
          alert('do something');
    });
4

2 回答 2

0
jQuery('.myselect').change(function(e) {
    method();
});

jQuery('mycheckbox:checked').each(function (){
    method();
});


function method(){
   alert('do something');
}

我认为你必须在两种情况下调用相同的函数

于 2013-10-14T09:58:16.063 回答
0

虽然您已经接受了答案,但在我撰写此答案时,我建议以下内容可能更合适,因为问题的编写方式表明您希望change事件触发动作,而不是遍历:checked无线电input元素,然后触发该动作。也就是说,我建议使用on()绑定到多个元素的方法:

function logThis(e){
    console.log("You triggered the " + e.type + " event on a " + e.target.tagName.toLowerCase() + " element.");
}

$('select, input[type="radio"]').on('change', function(e){
    logThis(e);
});

JS 小提琴演示

参考:

于 2013-10-14T15:17:49.513 回答