jQuery:多次检测到Click事件

时间:2011-07-04 14:03:58

标签: jquery

我遇到了jQuery点击事件处理的问题。

这是我的代码:

$j("#btn_renommer_groupe").click(function(){
  document.forms['creation_edition_groupe'].reset();
  $j("#img_saisie_nom_groupe").hide();
  $j("input[name=creation_groupe]").css("background-color", "#f0f0f0");
  fun_renommer_groupe();
})

function fun_renommer_groupe(){
  alert('test');
}

问题是,当我点击按钮时,警报信息会显示很多次。

有没有人知道为什么会这样?

编辑:

感谢您的回复。我不能发布所有的js文件(超过1000行)但这是我在这个按钮上做的两个独特的操作

$j("#btn_renommer_groupe").unbind('click');

$j("#btn_renommer_groupe").bind('click', function(){fun_renommer_groupe();});

2 个答案:

答案 0 :(得分:2)

我认为问题是你将点击事件绑定到同一控制方式的次数太多了。

$j("#btn_renommer_groupe").click(function(){
  ...
  fun_renommer_groupe();
})

和这个

$j("#btn_renommer_groupe").bind('click', function(){fun_renommer_groupe();});

将导致在{btn_renommer_groupe点击事件中调用两次fun_renommer_groupe(),请参阅此示例中的含义:http://jsfiddle.net/DpCDh/

确保您只绑定一次并进行排序!

答案 1 :(得分:1)

代码似乎正确...除了好奇的 $ j (为什么你不使用简单的$()或jQuery()?:P)

如果您没有在某处循环...确保您没有导入两次脚本!