Jquery 为什么当我使用click()方法时,结果会重复?
首先,我必须说,当我向动态表中添加动态行时,就会发生这种情况 在datosGuardados方法中,我有一个我想为Chrome的调试控制台显示的对象Jquery 为什么当我使用click()方法时,结果会重复?,jquery,object,button,methods,click,Jquery,Object,Button,Methods,Click,首先,我必须说,当我向动态表中添加动态行时,就会发生这种情况 在datosGuardados方法中,我有一个我想为Chrome的调试控制台显示的对象 datosGuardados: function(problema){ var self = this; var objTareas = new Object(); objTareas.tareas = aTareas; objTareas.descripcionProblema = problema; objTareas.idTareaS
datosGuardados: function(problema){
var self = this;
var objTareas = new Object();
objTareas.tareas = aTareas;
objTareas.descripcionProblema = problema;
objTareas.idTareaSeleccionada = $('#nombre_trabajador_id').val();
objTareas.nombreTrabajador = $('#nombre_trabajador_id option:selected').text();
console.info(objTareas);
return objTareas; },
这是包含按钮的方法AccionBotonEnviar:
AccionBotonEnviar: function(data){
var self = this;
$("#btn_enviar_formulario_id").click(function(){
self.datosGuardados();
}); },
如果我在表格中添加一行,并且不使用按钮打印,它会显示:
Object {tareas: Array[2], descripcionProblema: "aaa", idTareaSeleccionada: "2", nombreTrabajador: "Trabajador 2"}
但使用按钮打印:
Object {tareas: Array[2], descripcionProblema: "aaa", idTareaSeleccionada: "2", nombreTrabajador: "Trabajador 2"}
Object {tareas: Array[2], descripcionProblema: "aaa", idTareaSeleccionada: "2", nombreTrabajador: "Trabajador 2"}
两次
如果我加两行,然后按按钮,打印三行
问题出在哪里?在代码中的某个地方,您再次调用了绑定新单击处理程序的函数。可能是在添加新行的方法中 可以使用以下方法解除现有的绑定:
$("#btn_enviar_formulario_id").off('click').click(function(){
self.datosGuardados();
});
但是,由于不需要重复调用该函数,因此可能需要将其从代码中再次调用的位置删除,从而一次又一次地绑定同一个单击处理程序。黑客补丁是$btn_enviar_formulario_id。关闭“点击”。点击功能{但是你真的应该找到问题的根源,在那里函数被再次调用解决了我的问题!谢谢。但是你说这个问题是其他问题吗?是的,你在不期望或不需要调用同一个函数的时候调用了。可能在add row methodThank!中,无论如何都很奇怪,因为在这个模块中,我没有调用再次检查函数。但我将再次检查。