l' eval non ti serve
o ti salvi da qualche parte "i"
nel valore di un attributo (addirittura quell' href che sovrascrivi potrebbe richiamare direttamente la tua funzione e passare correttamente "i") o expando, o un data-qualcosa per poi andarlo a rileggere

o ti serve una closure al volo
arrA[i].onclick = (function(x){return function(){alert(x)}})(i);

ciao