Newsgroup: it.comp.lang.javascript
Titolo: Convalida dati di una form

Salve a tutti,
ho creato un semplice script che richiamato sull'evento onsubmit di una
qualsiasi form
verifica se i campi rispettano delle regole che l'utente imposta per essi
(ad
esempio deve essere compilato, se deve contenere indirizzo mail, se deve
contenere un numero minimo di caratteri,
etc etc, tutto questo grazie all'aggiunta di alcuni tag nel codice del
oggetto da controllare).
Ho verificato questo script con:
- ie 6
- netscape 7.2
- opera (non ricordo la versione, è quella presa dal sito quindi penso che
sia l'ultima)
- mozilla FireFox 1.0
e funziona molto bene. Questo script utilizza:
- getAttribute
- getElementsByTagName
che voi sappiate funzionerebbe anche con IE 5? Oppure mi potete dire dove
recuperare una vecchia
verione di IE per fare delle prove di compatibilità?
Ps
Lo vorrei mettere su 
http://sourceforge.net/
 ma qualcuno sa come si fa?
Non ho capito dalle info del sito.
Grazie

 che voi sappiate funzionerebbe anche con IE 5? 
Direi di sě, se perň hai un link raggiungibile posso provarlo. Scordati
perň IE4.
Vecchi browser:
http://browsers.evolt.org/
-- 
"That until there is no longer first class
And second class citizens of any nation
Until the colour of a man's skin
Is of no more significance than the colour of his eyes
Me say war"
B.M.

 però IE4.


 ha scritto nel messaggio
news:1s1r1tpb...@ID-147253.user.individual.net...


 Dimenticavo ...., si puo' installare il IE 5 avendo il IE 6?
si, puoi.

 Decomprimo semplicemente lo zip da qualche parte?
Benvenuto nel fantastico mondo Microsoft! Tante novità, facilità di
utilizzo, assoluta personalizzazione del sistema! Prova anche tu i prodotti
Microsoft, resterai stupefatto!
........
No, non è fattibile (sentiamo comunque Tobia che ha scritto "sì, puoi"
perché sono curioso).
In quel sito trovi gli IE-StandAlone ma a me hanno dato risultati
contrastanti, non sempre veritieri. Alcune versioni di IE, quando le
installi, tra le opzioni avanzate ti forniscono un "conserva versione
precedente" ma in realtà sostituiscono le dll (ho usato questa opzione
tempo fa per avere sia IE4 che IE5 sul pc, dopodiché ho scoperto che il
"mio" IE4 apriva correttamente il sito mentre un IE4 puro no...)
Io ho risolto nella ditta dove lavoravo prima con N pc vecchi, ognuno con
una diversa versione di IE (sigh...), mentre adesso sto risolvendo con
vmware (una macchina virtuale per ogni versione di IE).
-- 
"E' l' ignoranza che crea l'intolleranza
 di gente cieca e senza coscienza"
									  S.S.S.

 perché sono curioso).
Dunque, ecco alcuni links che spiegano tutto:
http://www.quirksmode.org/browsers/multipleie.html
http://labs.insert-title.com/labs/article795.aspx
http://labs.insert-title.com/labs/article808.aspx
Per esperienza personale, se tu installi piu' versioni di ie, tipo ie5, 
ie5.5, ie4, ie6, etc, apri ie4, e usi per es. document.getElementById 
non ti funziona, come è giusto che non funzioni in quanto ie4 non lo 
aveva. Questo per sintesi.
In pratica, è possibile avere più IE, a te serve usare ie5 pur avendo 
già ie6, la risposta appunto puoi. Sul fatto che sia perfetto non ci 
giurerei nel qual caso ti consiglio di usare vwware.
saluti

 "mio" IE4 apriva correttamente il sito mentre un IE4 puro no...)
uhm...devi aver sbagliato qualcosa...ha creato il file IEXPLORE.exe.local ?

Ciao a tutti
ho una pagina che permette di aprire una finestra, in questa finestra
posso inserire un valore, questo valore vorrei che mi ritornasse nella
pagina principale in un campo del form.
Ho provato a cercare qualcosa, ho visto che si dovrebbe utilizzare
opener.document ma non capisco bene che tecnica bisogna utilizzare...
so che mi aiuterete come sempre...
Grazie e Ciao
Pippo



Per quale dei due? Se per il "conserva versione" non ricordo (era parecchio
tempo fa) ma confermo assolutamente il problema (al 90% era un vero IE4, ma
c'erano casi in cui funzionava anche se non doveva).
Se non hai la certezza assoluta che il risultato sia corretto IMHO non vale
assolutamente la pena usarlo (anche perché appunto, usando
l'IE4-compatibile, mi ero preso una grande in@"£$%£"ata...)
Invece per lo standalone mi dava altri tipi di problemi che non ricordo;
ricordo che IE4 non apre i siti da url (devi fare file-apri e digitare
l'url). Anche analizzando le intestazioni c'era qualcosa che non andava
(forse anche con ?-informazioni visualizzava un dato errato).
IHMO, dopo i test fatti, direi quindi che è inapplicabile in quanto non si
ha la certezza del risultato.
-- 
"Ti sei salvato
 o sei entrato in banca pure tu?"
									    A.V.



Sì, ma più aiuto di così...cosa vuol dire "che tecnica usare"?
Cosa esattamente non capisci? Una volta capito che devi usare
opener.document le sintassi sono uguali precise, come se ti trovassi nella
stessa pagina e devi scrivere un valore da una text a un'altra...
p.s. stesso dominio.


>p.s. stesso dominio.
si stesso dominio

Cosa esattamente non capisci? 
cioè se uso opener mi viene da pensare alla pagina che ho aperto
quidni diciamo che dalla pagina 1 apro la 2  e gli passo i valori con
opener ma dalla 2 alla 1 è sempre opener.document.nome  o cosa?
con operner penso alla pagina appunto aperta e non a quella che ha
fatto partire l'evento...
non so se mi sono spiegato


 non so se mi sono spiegato
Sě (ma non facevi prima a provare?), opener č la window che ha aperto la
popup. Quindi dalla tua popup
opener.document.forms['nametuaform'].elements['nametuoelemento'].value=document.forms['nomeformnellapopup'].elements['nometextnellapopup'].value;
-- 
"Emancipate yourselves from mental slavery;
None but ourselves can free our minds"
									    B.M.

opener.document.forms['nametuaform'].elements['nametuoelemento'].value=document.forms['nomeformnellapopup'].elements['nometextnellapopup'].value;
azzz !!! io ci mettevo davanti window , facevp window.opener. !!!!
grazzzie

 azzz !!! io ci mettevo davanti window , facevp window.opener. !!!!
E' un "errore" che vedo dappertutto, ma secondo me č solo inutile (dovrebbe
funzionare anche con window.opener, penso...ma se dici il contrario ci
credo)


credo)
oppero non mi funge continua a dirmi che l'oggetto č nullo!!!

 già ie6, la risposta appunto puoi.
No, la risposta e' "puoi, con riserve". Non e' come avere un'installazione
"pura" di IE5. Essenzialmente il "puoi" ha senso solo se vuoi testare il
layout di un sito.
-- 
ZER0://coder.gfxer.web-designer/
~ Se potete leggere questo, la mia donna e' caduta.
(Letta sul retro di una maglietta di un motociclista)

 
... mmm ... ho letto vari tuoi post per cui so che tu lo sai, quindi non 
mi rivolgo a te direttamente ...
Il contesto in cui lavora javascript in un browser è in *ultima analisi* 
sempre la window in cui viene scritto il codice. Quindi tutte le 
variabili dichiarate al di fuori delle funzioni sono delle proprietà 
dell'oggetto window. Le funzioni dichiarate fuori da altre funzioni sono 
dei membri dell'oggetto window.
opener è una variabile membro dell'oggetto window.
Poichè per l'appunto nella risoluzione dei vari riferimenti che usiamo 
nei nostri script in *ultima analisi* si va a finire nella window se 
anche non la specifichiamo è lo stesso; a meno che non siamo così furbi 
da dichiarare della variabili con lo stesso nome delle proprietà 
intrinseche della window.
function foo() {
	var opener = "bella genialata";
	var openerDoc = opener.document;  // raise an exception
	var trueOpenerDoc = window.opener.document; // ok
}
function foo1() {
	var openerDoc = opener.document;  // ok
	var trueOpenerDoc = window.opener.document; // ok - identica
}
E' un po' vecchio ma mi pare ancora chiaro in questa parte:
http://www.unix.org.ua/orelly/web/jscript/ch10_06.html
Vi consiglio le ultime edizioni dello stesso.
Ciao.
	-ema-

 anche non la specifichiamo è lo stesso;
Bada bene, c'e' una sottile differenza. In realta' noi non *specifichiamo*
la "window", *bensi'* utilizziamo una proprieta' dell'oggetto window che e'
autorefenziante, e si chiama, appunto, "window".
Non so se mi sono spiegato.
L'oggetto principale - nel caso dei browser e' l'oggetto finestra - di suo,
non e' accessibile, perche' e' del livello piu' alto. Per questo ci viene
fornita una proprieta' di tale oggetto, che punta all'oggetto stesso.
Difatti la proprieta' window e la proprieta' self sono sinonimi.
Non e' quindi, che rendiamo "esplicito" qualcosa specificandolo, che prima
era "implicito".
Ovviamente tutto questo su "carta". In questi anni e' capitato che alcuni
browser avessero dei "bachi" per cui se non si specificava "window" in
determinati contesti si aveva un comportamento anomalo; e la proprieta'
self non rifletteva esattamente la proprieta' window.
In altri enviroment o applicazioni scriptabili con un linguaggio
javascript/ecmascript like, spesso non abbiamo questa opportunita'. Ed e'
un gran peccato; perche' il fatto di avere un riferimento all'oggetto che
"fa da contesto" ci permette giochini interessanti.
-- 
ZER0://coder.gfxer.web-designer/
~ Come devo regolare la stampante laser per stordire?
(How do I set a laser printer to stun?)