que tienen un conjunto de etiquetas de anclaje generadas dinámicamente en un bucle de la siguiente manera:usar jQuery clic para manejar el ancla onClick()
<div id = "solTitle"> <a href = "#" id = "' + tagId + '" onClick = "openSolution();"> ' + solTitle + '</a></div> <br>';
Una vez que se ejecuta este código de la salida html para uno de los casos se vería como:
<div id = "solTitle"> <a href = "#" id = "solution0" onClick = "openSolution();">Solution0 </a></div> <br>
<div id = "solTitle"> <a href = "#" id = "solution1" onClick = "openSolution();">Solution1 </a></div> <br>
Ahora quiero que se muestren diferentes textos al hacer clic en los enlaces de arriba. openSolution() tiene el siguiente aspecto:
function openSolution() {
alert('here');
$('#solTitle a').click(function(evt) {
evt.preventDefault();
alert('here in');
var divId = 'summary' + $(this).attr('id');
document.getElementById(divId).className = '';
});
}
Cuando ejecuto y haga clic en cualquiera de los enlaces, el flujo doesnot vienen dentro del manejador de jQuery clic. Lo revisé por las alertas anteriores usadas. Solo muestra la alerta: 'aquí' y no la alerta 'aquí dentro'. Al hacer clic en el enlace por segunda vez, todo funciona perfectamente con el valor correcto de divId.
que no será válido ya que el #soltitle se repite –
@ToniMichelCaubet - Lo mencioné en el último párrafo. Aunque creo que podría ser un poco más claro, gracias. –