Problemi javascript con toString

  • Creatore Discussione Creatore Discussione lifedj
  • Data di inizio Data di inizio

lifedj

Nuovo Utente
3 Gen 2015
4
0
0
Ciao, ho un problema "strano":
se provo ad eseguire il codice di seguito inserendolo in un nuovo file html, le alert mi riportano effettivamente 2 valori diversi (decimale ed esadecimale).
Invece se provo a inserire lo stesso codice in un file un pò più complesso il risultato delle 2 alert è lo stesso (mi riportano tutte e 2 lo stesso valore (il decimale).
Sapreste aiutarmi a capire qual è il problema?

Codice:
<head>
    <script>
    function fromStringToHex(string)
    {
    	var hex, i;
    	var result = "";
    	for (i=0; i<string.length; i++) {
    		alert('decimale'+string.charCodeAt(i).toString(10));
    		alert('esadecimale'+string.charCodeAt(i).toString(16));
    	  hex = string.charCodeAt(i).toString(16);
    	  result += ("0"+hex).slice(-2);
    	}
        return result;
    }
    </script>
</head>
<html>
	<input type="text" id="prova" name="prova" value="saluti" />
<input type="button" onclick="javascript:alert(fromStringToHex(document.getElementById('prova').value));">
</html>
 
Ciao, ho risolto.
In effetti anche io avevo provato il codice in un nuovo file e funzionava alla perfezione!

Ho scoperto che il vecchio programmatore aveva ridefinito la funziona toString ... non mi chiedete il perchè: me lo sto ancora chiedendo!

;-)

Grazie mille per il supporto! ;-)

Ciao e benvenuto sul forum.

Ho provato il tuo codice e sembra funzionare correttamente su http://jsfiddle.net/h1vy64fg/ la cosa che non capisco e' perche' hai inserito 2 volte la chiamata ad alert sia sull'evento onclick del bottone, sia nella funzione stessa.

Puoi incollare il tuo codice nel file "piu' complesso" ?

Ciao
 

Discussioni simili