dilemma javascript!

straocio

Nuovo Utente
29 Ott 2013
2
0
0
Ciao a tutti sono carla,
sto facendo un esercizio per l'università e mi sono imbattuta in questa piccola paranoia:

HTML:
<script>
		var a = Array();
		a[0] = "pippo";
		a[1] = "pluto";

		
		$(function() {
			for (var i=0; i<2; i++)
			{
				$('#' + a[i]).on('click', function() {				
					return false;
				});
			}
		});
		
		
	</script>

<p><a id="pippo" href="">clicca pippo</a></p>
<p><a id="pluto" href="">clicca pluto</a></p>

Se lo si esegue l'alert di i è sempre 2, mentre i valori di $('#' + a) me li prende corretti a 0 e 1.... come faccio a fare l'alert del giusto valore del ciclo quindi 0 per pippo e 1 per pluto?
 
Ciao, non vedo altra soluzione se non ciclare l'array ad ogni click
Codice:
<script>
    var a = Array();
    a[0] = "pippo";
    a[1] = "pluto";		
    $(function() {
        for (var i=0; i<2; i++)
        {
            $('#' + a[i]).on('click', function() {	
                for(var k in a) {                    
                    if(a[k] == $(this).attr("id")) {
                        alert(k);
                    }
                }
                return false;
            });
        }
    });		
</script>
 

Discussioni simili