Not logged inIl Forum di Web-link
Forum Home di Web-Link.it Help Search Register Login
  Previous Next Up Topic AJAX Programmazione / AJAX / problema con innerHTML = '<option>... per IE (locked) (218 hits)
- - By lillo Date 14-05-2010 01:55
Ciao maxk,

rieccomi qui che ti rompo le scatole su un nuovo problema che non sono riuscito a risolvere da solo e ti chiedo consiglio: si tratta di una '<select id="sel" multiple></select>' all'interno della quale dovrei inserire dinamicamente una serie di opzioni '<option>esempio</option>' attraverso il metodo document.getElementById('sel').innerHTML = '<option>esempio</option>';
Ecco, ovviamente su firefox tutto funziona perfettamente (come anche per Safari e Chrome), ma quel maledetto IE non ne vuole sapere di visualizzarle...

Hai qualche idea?

Grazie mille, come sempre.
Parent - - By maxk Super Admin area PHP AJAX JavaScript persona disponibile e competenteAvatar Maxk5.0002.0001.000 Date 14-05-2010 07:55
Eh... purtroppo bisogna utilizzare altre tecniche, ovvero creare l'oggetto <option> e "appenderlo" al padre:

var opt = document.createElement( "option" );
opt.innerHTML = "esempio";
opt.setAttribute( "value" , "valore" );
document.getElementById('sel').appendChild( opt );


Parent - - By lillo Date 14-05-2010 16:25
Perfetto, ma con i comandi createElement e appendChild continua a funzionare su tutti i browser...ovviamente non su IE!

Ho comunque trovato una soluzione attraverso

select.options[select.options.length] = new Option('esempio','value');

che pare essere compatibile anche con IE

Max, ti volevo chiedere ancora una gentilezza, in queste opzioni ho bisogno di inserire degli spazi tra una parola e l'altra del tipo &nbsp; in modo che possa separarle...
Sono riuscito a trovare che all'interno di stringhe JavaScript i caratteri speciali sono da inserire in formato HEX (esadecimale), e che il valore dello spazio dovrebbe essere 20 (in HEX), quindi ho provato in tutti i modi ma non sono riuscito a implementarlo correttamente nella stringa, al contrario sono riuscito per &agrave; --> \u00E0 (per JS).

Tu hai una soluzione?!?
Parent - - By maxk Super Admin area PHP AJAX JavaScript persona disponibile e competenteAvatar Maxk5.0002.0001.000 Date 15-05-2010 11:16
Non ho capito cosa intendi separare, comunque anche in JS si usa premere semplicemente la barra spaziatrice per mettere uno spazio nelle stringhe.

Parent - - By lillo Date 15-05-2010 16:38
Per separare intendo una cosa del genere:
-------------ciao---------------ciao---------------ciao (però con gli spazi)

se all'interno dell'opzione inserisco in Html &nbsp; ottengo il risultato che voglio, ma se lo devo inserire all'interno della stringa js ottengo i caratteri stessi.. Attraverso spazi di questo genere '       ' ottengo un singolo spazio..
Non so che fare probabilmente la complicanza è che voglio inserirli all'interno dell'option...
Parent - - By maxk Super Admin area PHP AJAX JavaScript persona disponibile e competenteAvatar Maxk5.0002.0001.000 Date 15-05-2010 21:48
Una volta mi era servito creare delle identazioni nelle option, ma se non mi sbaglio avevo usato i CSS... ora, sinceramente, non mi viene in mente nulla come soluzione; molte volte le soluzioni che do sono frutto di esperienze vissute.

Parent - By lillo Date 16-05-2010 14:15
Della serie chi cerca trova, finalmente ho trovato il corrispondente JS del &bnsp; : \xa0

Grazie, maxk, sempre molto disponibile

  Previous Next Up Topic AJAX Programmazione / AJAX / problema con innerHTML = '<option>... per IE (locked) (218 hits)

Powered by mwForum 2.22.1 © 1999-2010 Markus Wichitill

Links utili a pagine e servizi del Forum.
Forum - Vedi la mappa Mappa Geografica Utenti - Gli Admin - Faccine o Smileys - Attributi Testo - Gruppi - Tips - Regole

Primi Passi Primi Passi HTML - Guida HTML Guida HTML 4.01 - Guida CSS Guida CSS - Guida XHTML XHTML con style - Scripting - F.A.Q.