Newsgroup: it.comp.lang.javascript
Titolo: IE vede un attributo come funzione invece che come stringa

Oggi è giornata di problemi :(
Sempre alla solita funzione:
#####################################
function setAtt(attribute, replacer, to)
{
	try
	{
		var A = to.getAttribute(attribute);
	}
	catch(er) {
		var A = to[attribute];
	}
	//alert(A);
	A = A.replace("X",replacer);
	try
	{
		to.setAttribute(attribute, A);
	}
	catch(er) {
		to[attribute] = A;
	}
}
#####################################
La funzione viene richiamata da un ciclo che scorre diversi elementi.
Su Firefox non dà problemi perchè tutti gli attributi vengono
identificati come stringhe.
Su Internet Explorer (e ti pareva! Porco cane!) invece viene vista come
funzione!
Un alert(A) mi mostra
    su FF
          "Sub(X);"
    su IE
          function anonymous() {
               Sub(X);
               }
Io devo assolutamente sostituire quella X con un numero!
Come ci tiro fuori le gambe? :(
Thanks....

 Io devo assolutamente sostituire quella X con un numero!
Te lo dico sinceramente, secondo me stai sbagliando ogni cosa. Qualsiasi
cosa tu voglia ottenere, dato da cosa siamo partiti (ovvero la duplicazione
di elementi) questo non è l'approccio corretto.
Riparti dall'analisi, e butta via tutto. Se vuoi una mano, spiega
esattamente cos'è che vuoi ottenere. Ma non a livello di codice, ma in
termini d'analisi.
-- 
~ Chi segue gli altri, non arriva mai primo.

ZER0 ha scritto:

Te l'avevo già scritto in qualche altro thread mi pare... comunque:
Ho un questionario in ASP, con tabelle dei questionari, destinatari dei
questionari, domande e risposte.
La pagina di creazione dei questionari è fatta.
Ora devo fare una pagina di gestione delle domande (con relative
risposte) che, senza ricaricarsi (quindi con JS), permette di
aggiungere/rimuovere le risposte alla domanda selezionata (tramite dei
tasti "+" e "-" che appaiono accanto ad ogni domanda).
Questo avviene solamente quando si seleziona il tipo di domanda a
risposta multipla invece che con Vero/Falso (ma questo non credo che ti
interessi ^_^)
E' tutto già funzionante..... devo solamente risolvere questa rogna
dell'aggiungere infinite risposte.
Non credo ci siano molti altri metodi...... non posso fare un numero di
risposte 'nascoste' da mostrare su pressione del tasto "+" (che oltre
che limitativo è veramente poco funzionale).
Ho un div che contiene tutte le risposte al quale devo aggiungere ogni
volta un nuovo blocco (input per la risposta, input per l'ordinamento,
checkbox per dire se è corretta o no, tasti di aggiunta/rimozione, e
messaggi).
Ogni risposta è numerata progressivamente (non è a livello
funzionale, ma puramente estetico) e se elimino la risposta (x es.)
numero 7 tutte le successive devono scalare di una cifra.
Alla fine non è neanche troppo codice quello che ho scritto adesso...
e su Firefox funziona tutto perfettamente senza errori....
Peccato che ci sia stato IE (che purtroppo non posso ignorare per via
del cliente che lo usa) che oggi mi ha portato una rogna dietro l'altra
(avevo finito oggi all'una.... e per cercare di risolvere i problemi di
IE, che ancora non sono finiti, ho fatto serata...).
Non so se ci sono altri metodi particolari per fare quel che voglio.
Tu che ne dici?
Comunque anche se cambiassi metodologia non mi dispiacerebbe sapere il
perchè dell'astruso comportamento di IE (che se non si distingue non
è contento...).
Grazie :)

 Grazie :)
De nada.
-- 
~ Non ci sono certezze, solo ragionevoli probabilità. (W. Howe)

 ~ Non ci sono certezze, solo ragionevoli probabilità. (W. Howe)
Giusto! ..... 
.....sicuramente Howe aveva ragione ^_^

 .....sicuramente Howe aveva ragione ^_^
LOL. :)
-- 
~ "E' bello essere vivi. Ci sono tante cose che non si possono fare
da morti."

 Non sbagli, 
Pardon, sbagli. Per un attimo ho fatto confusione, dato che ho parlato
proprio recentemente di elementi inline/block. Un LI può contenere benissimo
un DIV, non è inline.
-- 
~ L'intelligenza artificiale non può battere la stupidità naturale.
(Lemma di Sullivan)

 da morti."
Tipo morire e vivere :D

 Ancora grazie per il tempo dedicatomi :)
De nada.
-- 
~ Il lavoro è prezioso. Non essere egoista! Lascialo agli altri!

 Spero ti sia più chiaro adesso, nel caso fai un fischio.
Mi stai aiutando molto (anche solo a livello di chiarimento di idee
:>).
Però resta la questione del passare un identificativo come parametro
alla funzione Remove() (che si occupa di fare il removechild).
Tnx

 alla funzione Remove() (che si occupa di fare il removechild).
Spero di averti "illuminato" adeguatamente, ora. :)
-- 
~ Non esistono donne brutte. Dipende solo da quanta vodka bevi.
(proverbio russo)

 (proverbio russo)
Non esistono donne brutte, e basta ^_^
(forse ho geneticamente troppa vodka nel sangue!)