为什么我的jquery函数在点击时会运行两次?
$("a").click(processAction);
function processAction(e){
var clicked = e.target;
//show apply button.
$("#apply").live("click",function(e){
e.stopPropagation();
someFunction(clicked);
alert("this the array " + mydata);
clicked = "";
});
}
someFunction正在运行两次!
答案 0 :(得分:6)
对于a元素的每次单击,都会向#apply-element添加一个单击处理程序。如果在a元素上单击3次,然后单击#apply,将运行三个不同的'someFunction'实例。
答案 1 :(得分:3)
.unbind(“click”)。bind(“click,somefunction”工作得很漂亮。
答案 2 :(得分:0)
如果您使用.live()将click事件附加到该特定锚点,则不必使用
将其他点击事件附加到锚点$("a").click(processAction);
我不确定你是否故意将.live放在锚点击功能中,如果不是,你可以拔出.live()并与实际的点击功能分开。