Newsgroup: it.comp.lang.javascript
Titolo: Oggetti senza form

Una domanda semplice semplice: e' possibile accedere (da javascript) ad un
oggetto sulla pagina senza passare dal form?
Mi spiego meglio...
Su una pagina ho inserito un combo. Questo combo non sta in una form,
perche' tanto non deve esserci il submit.
Vorrei sull'onchange del combo leggere il .value, ma non sembra funzionare.
Se metto tutto dentro una form, ok, ma fuori no...
Idee?
--------------------------------
Inviato via 
http://arianna.libero.it/usenet/

 Se metto tutto dentro una form, ok, ma fuori no...
Stai comunque sbagliando qualcos'altro perché onchange nella select
funziona al 100% correttamente anche senza il tag form. Cosa esattamente
stai eseguendo onchange?
-- 
"E' l' ignoranza che crea l'intolleranza
 di gente cieca e senza coscienza"
									  S.S.S.

 stai eseguendo onchange?
C'era qualche sott'inteso.
Sul'onchange del combo chiamo una funzione jscript che deve leggere il
.value del combo stesso.
Cmq, come dicevo, risolto usando il <FORM>
Un ultima domanda: esiste un qualche sito con i riferimenti alle
proprieta'/metodi dei vari controlli?
Ad esempio, al momento mi trovo nella necessita' di dover leggere sia il
.value del combo, sia il testo della voce scelta. Solo che .text mi dice che
e' undefined...


 e' undefined...
Devi passare dalla collection options, del tipo 
this.options[this.selectedIndex].text
-- 
"Affacciati affacciati benedici, guardaci
 guardaci...guardaci!
 Tanto sono quasi duemila anni che stai a guardare!"
									    E.B.

 e' undefined...
Infatti, per il text devi prendere il riferimento all'option selezionato,
quindi:
<select onchange="alert(this.options[this.selectedIndex].text)">
Giusto per farti vedere il meccanismo.
-- 
C'ya,
  ZER0 :: coder.gfxer.webDesigner();
"When you have eliminated the impossible, whatever remains,
however improbable, must be the truth." (S.H.)


Grazie ad entrambi, funziona a meraviglia.
Un'ultima cosa, poi smetto di rompere le balle...Si puo' passare un oggetto
da una finestra ad un'altra?
Spiego meglio: un collega sta tentando (prima esperienza) di realizzare un
sito dinamico. Aveva bisogno di un modo per chiedere all'utente il comune
dove abita, e cosi' ho realizzato (anche grazie a voi) il classico sistema
delle finestre successive (click su un pulsante apre una finestra, la prima
chiede la regione, la seconda la provincia, la terza il comune).
Il codice dell'ultima finestra fa questo:
opener.document.form_Input.txtIDComune.value=objCombo.value;
opener.document.form_Input.txtComune.value=objCombo.options[objCombo.selectedIndex].text;
close()
Il problema consiste nel fatto che non e' affatto flessibile! Vorrei fare in
modo che la pagina principale comunichi a quella aperta quali sono gli
oggetti in cui scrivere....
E' possibile?


 E' possibile?
Possibile e' possibile; ma bisogna capire piu' o meno cos'e' che vorresti
ottenere. Faccio un esempio:
La pagina figlia di popup e' puo' caricare informazioni diverse, o essere
chiamata da "campi" diversi.. quindi cio' che gli serve sono i due
riferimenti in cui scrivere l'ID ed il Valore.
Per ottenere questo, ci sono diverse strade.. ad esempio:
var wn=window.open("popup.htm","title","");
wn.objID=document.form_Input.txtIDComune;
wn.objText=document.form_Input.txtComune;
e dalla finestra figlia, poi dovresti poter fare:
objID.value=objCombo.value;
objText.value=objCombo.options[objCombo.selectedIndex].text;


 e' undefined...
Aggiungerei a quello che ti hanno detto un piccolo suggerimento che ho usato
spesso
Se scrivi qualcosa tipo
for (var e in il_mio_controllo_sconosciuto)
    document.write(e);
ottieni la lista di tutte le proprieta' (compresi gli eventi on*)
dell'oggetto.
Con tutte le limitazioni del caso (non ci sono i metodi, non si ottiene una
spiegazione della funzione delle varie proprieta') ad un programmatore
arrugginito puo' bastare un'occhiata alla lista generata x capire la
proprieta' che gli interessava...
Ciao,
Ema




On Fri, 10 Dec 2004 09:35:26 GMT, Drizzt wrote:
[stracuttone]
Non ho ben capito questo tuo reply..


 ottieni la lista di tutte le proprieta' (compresi gli eventi on*)
No, quest'ultimi non gli ottieni su tutti i browser. Su IE, ad esempio si'.
Su i browser gecko based, no.
