JQuery函数“On tick”(不是“On click”)

时间:2010-08-02 20:21:31

标签: jquery

当勾选或取消勾选复选框时,JQUERY中有没有办法触发某个功能?

注意:我不想要“点击”功能,因为我使用其他按钮同时勾选或取消勾选20个复选框。 (在这种情况下,我只有1次点击,但实际上我需要做20次“点击”功能,每20个复选框勾选一个)我不想做make循环,因为我正在使用分页和其他东西,我我正在寻找一种更简单的“onTick”功能。

该事件是onTick或onUnTick但不是“onClick”

有没有解决方案?

非常感谢!

解决并100%工作:

$( “输入[类型= '复选框']”)的变化(函数(){});

5 个答案:

答案 0 :(得分:8)

$('input[type=checkbox]').bind('change', function(e){
  var jT = $(this);  //jT is a jQuery Object for the current input
    //I.E. 20 'ticks' = 20 calls no looping needed.
  if (jT.is(':checked')){
    //was checked
  } else {
    //was unchecked
  }
});

答案 1 :(得分:3)

我想也许onChange会起作用。

答案 2 :(得分:0)

尝试onchange事件。当复选框的状态发生变化时(甚至是programaticaly),它会被触发。

答案 3 :(得分:0)

jQuery有一个.change()方法,它基本上处理onChange事件。你可以使用它。 http://api.jquery.com/change/

答案 4 :(得分:0)

这是我点击复选框时淡出项目的方法。

$(".done").live("click", function(){

if ($(this).is(':checked')) {

$(this).parent()。fadeTo('slow',0.5);    }否则{

$(this).parent()。fadeTo('slow',1);    }  });

.done是我的复选框类,为多个复选框执行此操作,您将其设置为全选。 实施例

$(".selectall").live("click", function(){

if ($(this).is(':checked')) {

$(this).parent()。fadeTo('slow',0.5);    }否则{

$(this).parent()。fadeTo('slow',1);    }  });

所以基本上.is(':checked'))会做你想要的。

编辑:抱歉代码失败 - 出了点问题。