change - simulate click jquery
jquery e.target.hasClass no funciona (2)
Está intentando usar un método jQuery, hasClass() , en un elemento DOM estándar. Necesita convertir el e.target elemento JS DOM a un objeto jQuery, de la siguiente manera:
$(event.target).hasClass(''textbox'')
Y terminas con:
$(''#textbox_''+i).on(''click'', function(event){
if( $(event.target).hasClass(''textbox'')) alert(''got it!'');
});
Observe el uso de on() , el cierre correcto de la función de click , y no necesita corchetes en su instrucción if si solo está ejecutando una alerta simple.
Creo dinámicamente un nuevo div (con una clase e ID de "cuadro de texto") y algunos otros elementos dentro de él, y más adelante en mi código, vinculo ese div al evento click y visualizo el elemento en el que se hizo clic, así:
$(''#textbox_''+i).bind(''click'', function(event){
alert(event.target.className);
}
Esto está bien, y me dará textbox como una de las clases que se muestran. Pero event.target.hasClass() no parece funcionar. Entonces, cuando hago lo siguiente, no pasa nada:
$(''#textbox_''+i).bind(''click'', function(event){
if(event.target.hasClass(''textbox'')) { alert(''got it!''); }
}
Lo intenté de diferentes maneras y me parece que event.target.hasClass() simplemente no funciona. ¿Hay alguna otra forma de lidiar con los eventos o estoy haciendo algo mal?
Si quieres seguir utilizando tu elemento JS DOM plain sin usar jQuery:
event.target.classList.contains(''textbox'')