Newsgroup: it.comp.lang.javascript
Titolo: window open pensavo piu facile

premetto che sono agli inizi, comunque mi sono scaricato un tutorial dalla
rete
ma è troppo scarso, ho trovato un poca di teoria in più, ma senza
esempi.....
cmq il mio problema è questo: devo far si che si apra una finestra 200x180
cliccando dopo aver scelto da un list menu che ha una 20 di voci sarà
senz'altro una cosa da niente per voi ma per me ,sto pensando a strutture
decisionali non so se sia questo il caso . se potete darmi una mano su
questo e indicarmi dove trovare (in rete)
del materiale che contenga anche molti esempi o codice commentato ve ne
sarei grato.
saluti lobax

 ha scritto nel messaggio
news:a74L5.53223$3K3.1...@news.infostrada.it...

Hai già guardato su 
http://www.jsdir.com
  FAQ-finestre?
____________________
andreotta fabiano
WebMªster ATI POWER s.n.c.
andr...@atipower.it
http://www.atipower.it
http://www.afdsoftware.freeweb.org
____________________
http://www.jsdir.com
____________________
*¢ L'unica certezza nella vita è che tutto è relativo (per fortuna)¢*

 Hai già guardato su 
http://www.jsdir.com
  FAQ-finestre?
No ma ho guardato adesso è buono per scaricare tutorials e materiale in
genere  non ho trovato nulla su finestre ma ho trovato qualche spunto su
faq forms e sono rouscito a mettere insieme questo:
<html><head><title>Test</title>
<script language="JavaScript">
function mess()
{
for(i=0;i<document.form.sel.length;++i)
if(document.form.sel.options[i].selected == true)
(document.form.sel.options[i].value);
msg=open("","schermo","toolbar=no,directories=no,menubar=no,width=170,height
=250,resizable=yes");
msg.document.write("<HEAD><TITLE>TEST</TITLE></HEAD><body>");
}
</script>
</head><body>
<form name="form">
<select name="sel" size=1 onChange="mess()">
<option value="1500">pane
<option value="5200">burro
<option value="1300">riso
<option value="5500">acqua
<option value="3550">vino
<option selected>scegli</option>
</select>
</form>
</body></html>
non è esattamente quello che volevo perchè avrei voluto un bottone che
attivi l'opzione selezionata , e poi , come richiamo i contenuti nella nuova
finestra legati alle opzioni?
cioè se l'utente fa click su "pane" si apre una finestrella  con i relativi
contenuti,io ho usato msg.document.write(qui posso mettere solo i valori
relativi alla finestra ma me li mette indifferentemente dall'opzione
selezionata) come posso creare un contenuto diverso x ogni finestra?
saluti lobax

Il Mon, 30 Oct 2000 14:16:02 GMT, lobax ha scritto.....
function mess()
{
if (document.form.sel.selectedIndex!=0)
 {
 prezzo=document.form.sel.options[document.form.sel.selectedIndex].value;
 msg=open("","schermo","toolbar=no,directories=no,menubar=no,width=170,height
=250,resizable=yes");
 msg.document.write("<HEAD><TITLE>TEST</TITLE></HEAD>"+prezzo+"<body>");
}
}
</script>
</head><body>
<form name="form">
<select name="sel" size=1 onChange="mess()">
<option selected>scegli</option>
<option value="1500">pane
<option value="5200">burro
<option value="1300">riso
<option value="5500">acqua
<option value="3550">vino
</select>
</form>
</body></html>
Non l'ho provato, ma dovrebbe andare.
Nota che ho modificato il SELECT spostando in alto la voce "Scegli", e fatto 
comparire nella finestra il prezzo del prodotto scelto.
-------------------------
Per le finestre di pop-up sempre in JsDir vedi anche gli StaffScripts.
-- 
Ciao, Riccardo
------------------------------------------------------------------------
WebMaster: ----> 
http://www.jsdir.com
 <---- (aka 
http://www.jspoint.it
)
------------------------------------------------------------------------
Need a JavaScript password?
http://www.jspoint.it/staffscripts/script021/PazzWordProva/ingresso.html
------------------------------------------------------------------------
"Any sufficientely advanced technology is indistinguishable from magic"
                      Arthur Charles Clarke
------------------------------------------------------------------------

 comparire nella finestra il prezzo del prodotto scelto.
Purtroppo non va, ma mi ha fatto capire come deve funzionare,io scrivevo il
contenuto
in msg.document.write con il tuo esempio ho capito che aggingendo una voce
in questo caso prezzo e dicendo che prezzo è doc.form.sel.length;più la var
contatore che dovrebbe essere 0 ma così non è,quindi dovrebbe essere che
prezzo è uguale al documento selezionato,e in msg.document.write il
contenuto sarà "+prezzo+".(mi spiegherai perchè si usa "+xxx+")
Dimmi se il ragionamento è giusto, il SELECT che avevi modificato spostando
in alto "scegli" non andava bene perchè non appariva come prima voce
all'apertura del doc,
per quanto riguarda "scegli" dovrebbe avere un valore false ,non dovrebbe
aprirsi nessuna fin e questo non ho ancora capito come si fa .Perchè avevi
tolto la var contatore? cmq questo codice sembra funzionare,dimmi/ditemi se
può andare e
magari come assegnare a "scegli" una funzione passiva.
----------------------------------------------
<html><head><title>Test</title>
<script language="JavaScript">
function mess()
{
for(i=0;i<document.form.sel.length;++i)
if(document.form.sel.options[i].selected == true)
(prezzo=document.form.sel.options[i].value);
msg=open("","schermo","toolbar=no,directories=no,menubar=no,width=170,height
=250,resizable=yes");
msg.document.write("<HEAD><TITLE>TEST</TITLE></HEAD>"+prezzo+"<body>");
}
</script>
</head><body>
<form name="form">
<select name="sel" size=1 onChange="mess()">
<option value="<B><CENTER><font size=6>Pane</font></CENTER></B>
1500 pane al kilogrammo">pane
<option value="<B><CENTER><font size=6>Burro</font></CENTER></B>5200 ci
stiamo avvicinando">burro
<option value="<B><CENTER><font size=6>Riso</font></CENTER></B>1300 e si può
fare di più">riso
<option value="<B><CENTER><font size=6>Acqua</font></CENTER></B>5500 e pane
e vino e pippo e topolino e vediamo come vai a capo">acqua
<option value="<B><CENTER><font size=6>Vino</font></CENTER></B>il vino è
rosso e a questo punto se funzia si può mettere di tutto basta aggiungere i
tag che servono dimmi se sbaglio! 3550">vino
<option selected>scegli</option>
</select>
</form>
</body></html>
è un po' lungo scusatemi,
saluti
lobax

 (prezzo=document.form.sel.options[i].value);
Non va.
Questo non è il modo corretto di scegliere un valore da una SELECT, con IE ti 
funziona solo perché IE lo fa funzionare (corregge un TUO errore di 
programmzione), con altri browser (netscape, opera ecc in tutte le salse e 
presumo altre versioni di IE) non va e non andrà.
Se lo usi perdi potenziali clienti!!!!! Il sottoscritto in testa :-)
Il codice seguente è provato e funzionante.
<HTML>
<HEAD>
<SCRIPT>
var prod = new Array();
prod[1]=new Array("Pane","1.200");
prod[2]=new Array("Burro","5.200");
prod[3]=new Array("Riso","1.300");
prod[4]=new Array("Acqua","5.500");
prod[5]=new Array("Vino","3.550");
function mess()
{
if (document.form.sel.selectedIndex!=0)
	{
	quale=document.form.sel.selectedIndex;
	msg=open("","schermo","toolbar=no,directories=no,menubar=no,width=170,he
ight=250,resizable=yes");
	msg.document.open();
	msg.document.write("<HEAD><TITLE>TEST</TITLE></HEAD><B><CENTER><font 
size=6>"+prod[quale][0]+"</font></CENTER></B>"+prod[quale][1]+"</BODY></HTML>")
;
	msg.document.close();
	}
}
</script>
</head><body>
<form name="form">
<select name="sel" size=1 onChange="mess()">
<option selected>scegli</option>
<option>pane</option>
<option>burro</option>
<option>riso</option>
<option>acqua</option>
<option>vino</option>
</select>
</form>
</body>
</html>
Attenzione alle righe lunghe.
Quelle che cominciano con "msg." sono righe uniche!!!!!
Dopo che hai usato document.write() è sempre bene usare document.close() e 
prima document.open() (sempre a proposito di sintassi corretta).
Tanto per continuare con la sintassi corretta, gli <OPTION> si chiudono sempre, 
in special modo se usi JavaScript, quindi </OPTION>
Il magazzino te lo crei con un array di array (una matrice bidimensionale) e ci 
metti dentro solo i pezzi che servono. I tag di formattazione tanto vale 
scriverli con document.write.
"+...+" serve a spezzare la stringa e metterci dentro il valore di una 
variabile.
Per altri dubbi scrivi, ma prima datti una lettura alle lezioni che trovi su 
JsDir (ed a tanti altri tutorials/corsi che trovi in giro), ed anche alle FAQ 
sempre di JsDir.


mi sembra di aver capito cosě: a te servirebbe un menů e il codice per
aprire una finestra pop up, giusto?
allora, per il menů guarda 
www.risorse.net
 sezione dhtml.
per la finestra pop up basta un semplice:
<a href=# onclick="open('ciao.htm','','width=200,heigth=180'); return
false">link</a>
--
Ciao.
Fra!

 Il codice seguente è provato e funzionante.
[cut]
infatti: va perfettamente ma quello che è importante è che è molto leggibile
e comprensibile,una volta avevo sentito dire che un codice fatto bene non
c'è nemmeno bisognio di commentarlo.Volevo solo chiederti un chiarimento
circa al "[quale] [0]"
e poi, i contenuti che verranno messi nelle fin che in questo caso saranno
aggiunti
nell'indice , e se si dovesse avere un indice con 20 o 30 voci non
potrebbero sorgere
problemi di memoria?
andrò senz'altro a studiarmi il materiale che ho già scaricato da jvdir :(il
corso e un tutorial) , come da te consigliato e come è logico che sia.
ti ringrazio moltissimo per l'aiuto.
saluti,
Lobax

 ti ringrazio moltissimo per l'aiuto.
de nada
