下午好,我有一个我无法解决的问题,我在我的一个项目中使用了jQuer,并且正在用ajax加载部件,那么DOM中的任何事件都可以正常工作,当我遇到问题时就出现了对通过ajax加载的元素执行事件是很好的例子。
$('element').click(function(){ /*funcion a ejecutar.*/ });
问题:
(function($){
$(document).ready(function(){
$(document).on('click','elemento',function(){
/* funcion a ejecutar*/
});
});
})(jQuery);
问题是,当我使用()上的方法单击“元素”时;该动作执行了两次,这是我在放置计数器时发现的,因此该动作只能执行一次。
(function($){
$(document).ready(function(){
var inicio=0;
$(document).on('click','elemento',function(){
if( inicio == 0){
/*funcion a ejecutar*/
inicio++ /*cambio inicio para que solamente se ejecute una vez*/
}
});
});
})(jQuery);
通过此操作,您可以在单击时解决问题,问题是此功能适用于同一类的不同元素。
有人可以告诉我错误在代码段中的什么位置,或者是将click()与on()结合使用的更好方法,或者是访问动态创建的元素的另一种方法。
谢谢。
答案 0 :(得分:0)
尝试一下
$(document).on('click','.elemento',function(e){
e.stopPropagation();
e.preventDefault();
/*Your code here*/
});
编辑:同样,如果要将事件绑定到具有类的元素,请不要忘记在类名称之前的.
符号。就您而言,.elemento