HighDots Forums  

linkare a una nuova finestra da un dropdown menu'

Javascript (Italian) Il linguaggio JavaScript (it.comp.lang.javascript)


Discuss linkare a una nuova finestra da un dropdown menu' in the Javascript (Italian) forum.



Reply
 
Thread Tools Display Modes
  #1  
Old   
Chiara
 
Posts: n/a

Default linkare a una nuova finestra da un dropdown menu' - 04-24-2008 , 07:06 AM






Ciao Ragazzi,

non riesco a linkare il mio dropdwon menu' a una nuova finestra.
Il dropdown menu' si trova in una popup e dovrebbe linkare a una
finestra esterna altrimenti mi si carica nella popup.
Avete soluzioni? Grazie mille anticipatamente.
Questo è il mio codice per ora:
Nell' head:
<script language="JavaScript" type="text/JavaScript">
function MM_jumpMenu(targ,selObj,restore){ //v3.0
eval(targ+".location='"+selObj.options[selObj.selectedIndex].value
+"'");
if (restore) selObj.selectedIndex=0;
}
</script>

Nel body:
<form name="form2">
<select name="menu2" onChange="MM_jumpMenu('parent',this.form,1)"
class="textarea">
<option value="CPO_group_client_mouseover_cedent.htm"
selected>Cedent</option>
<option value="CPO_group_client_mouseover_broker.htm">Brok er</
option>
</select>
</form>

Reply With Quote
  #2  
Old   
Cristiano Larghi
 
Posts: n/a

Default Re: linkare a una nuova finestra da un dropdown menu' - 04-24-2008 , 07:14 AM






Il Thu, 24 Apr 2008 05:06:47 -0700 (PDT), Chiara ha scritto:

Quote:
non riesco a linkare il mio dropdwon menu' a una nuova finestra.
Il dropdown menu' si trova in una popup e dovrebbe linkare a una
finestra esterna altrimenti mi si carica nella popup.
vediamo se ho capito: hai una select che si trova in una popup, deve
aprirsi in un'altra popup, ogni volta diversa? Ho capito bene?

Quote:
script language="JavaScript" type="text/JavaScript"
function MM_jumpMenu(targ,selObj,restore){ //v3.0
eval(targ+".location='"+selObj.options[selObj.selectedIndex].value
+"'");
perché eval?
targ.location.href=selObj.value;

In questo modo passi un oggetto window, e in quell'oggetto window viene
aperta una pagina (la sintassi estesa che hai scritto serve solo per
netscape4...)

Se vuoi aprire ogni volta una popup non ti serve targ, basta un
window.open(selObj.value,"");

Quote:
form name="form2"
select name="menu2" onChange="MM_jumpMenu('parent',this.form,1)"
class="textarea"
parent? parent è il contenitore di un frame, è questo che vuoi? (non
conosco come è fatta questa popup dove si trova la select ... )

Spiega meglio.

--
"Run rabbit run
dig that hole, forget the sun
and when at last the work is done
don't sit down, it's time to dig another one"
P.F.


Reply With Quote
  #3  
Old   
ZER0
 
Posts: n/a

Default Re: linkare a una nuova finestra da un dropdown menu' - 04-24-2008 , 07:58 AM



Chiara <chiara.bolognini (AT) gmail (DOT) com> wrote:

Quote:
non riesco a linkare il mio dropdwon menu' a una nuova finestra.
Il dropdown menu' si trova in una popup e dovrebbe linkare a una
finestra esterna altrimenti mi si carica nella popup.
Vuoi caricare la pagina nella finestra esterna che ha aperto la popup, o
su un'altra finestra? In ogni caso, riprendendo quello
che hai pubblicato, lo modificherei in questo modo:

<script type="text/javascript">
function MM_jumpMenu( targ, selObj, restore, feat ){
if ( typeof targ=="string" )
window.open(selObj.value, targ, feat||"" );
else if ( targ && targ.location )
targ.location = selObj.value;

if ( restore )
selObj.selectedIndex = 0;
}
</script>

Ho cercato di mantenere inalterata la chiamata alla funzione.

E se vuoi caricare l'URL nella pagina che ha aperto la popup si
deve modificare l'HTML in questo modo:

Quote:
select name="menu2" onChange="MM_jumpMenu('parent',this.form,1)"
<select name = "menu2" onchange="MM_jumpMenu(opener,this,1);

--
"Se c'è qualcosa di più importante del mio ego su questa nave,
la voglio catturata e fucilata."


Reply With Quote
  #4  
Old   
ZER0
 
Posts: n/a

Default Re: linkare a una nuova finestra da un dropdown menu' - 04-24-2008 , 08:15 AM



Cristiano Larghi <c.larghi_NOSPAM (AT) editaliasrl (DOT) it> wrote:

Quote:
script language="JavaScript" type="text/JavaScript"
function MM_jumpMenu(targ,selObj,restore){ //v3.0
eval(targ+".location='"+selObj.options[selObj.selectedIndex].value
+"'");

perché eval?
Perché nei vecchi script ne veniva fatto un uso smodato, e quello direi
che è uno script generato da un Dreamweaver, o simile. Vi sono comunque
degli errori logici a livello di HTML.

Quote:
targ.location.href=selObj.value;
"targ" è una stringa, se non modifichi la chiamata a funzione.

Quote:
form name="form2"
select name="menu2" onChange="MM_jumpMenu('parent',this.form,1)"
class="textarea"
L'errore a cui mi riferisco sta qui: passa this.form in selObj, invece
del solo this; quindi tecnicamente lo script non avrebbe dovuto andare
correttamente neppure prima, a prescindere dalla domanda posta.

Quote:
parent? parent è il contenitore di un frame
è anche la finestra corrente, volendo.

--
"Se c'è qualcosa di più importante del mio ego su questa nave,
la voglio catturata e fucilata."


Reply With Quote
  #5  
Old   
Chiara
 
Posts: n/a

Default Re: linkare a una nuova finestra da un dropdown menu' - 04-24-2008 , 09:34 AM



On 24 Apr, 14:58, zer0.sh... (AT) libero (DOT) it (ZER0) wrote:
Quote:
Chiara <chiara.bologn... (AT) gmail (DOT) com> wrote:
non riesco a linkare il mio dropdwon menu' a una nuova finestra.
Il dropdown menu' si trova in una popup e dovrebbe linkare a una
finestra esterna altrimenti mi si carica nella popup.

Vuoi caricare la pagina nella finestra esterna che ha aperto la popup, o
su un'altra finestra? In ogni caso, riprendendo quello
che hai pubblicato, lo modificherei in questo modo:

script type="text/javascript"
* * * * function MM_jumpMenu( targ, selObj, restore, feat ){
* * * * * * * * if ( typeof targ=="string" )
* * * * * * * * * * * * window.open(selObj.value, targ, feat||"" );
* * * * * * * * else if ( targ && targ.location )
* * * * * * * * * * * * targ.location = selObj.value;

* * * * * * * * if ( restore )
* * * * * * * * * * * * selObj.selectedIndex = 0; * * *
* * * * }
/script

Ho cercato di mantenere inalterata la chiamata alla funzione.

E se vuoi caricare l'URL nella pagina che ha aperto la popup si
deve modificare l'HTML in questo modo:

* <select name="menu2" onChange="MM_jumpMenu('parent',this.form,1)"

select name = "menu2" onchange="MM_jumpMenu(opener,this,1);

--
"Se c'è qualcosa di più importante del mio ego su questa nave,
la voglio catturata e fucilata."
Quello che vorrei fare è semplicemente aprire una nuova finestra a
partire da link nel dropdown menu' della mia popup, nella quale ho
inserito il testo che vi ho mandato...


Reply With Quote
  #6  
Old   
Chiara
 
Posts: n/a

Default Re: linkare a una nuova finestra da un dropdown menu' - 04-24-2008 , 09:50 AM



On 24 Apr, 16:34, Chiara <chiara.bologn... (AT) gmail (DOT) com> wrote:
Quote:
On 24 Apr, 14:58, zer0.sh... (AT) libero (DOT) it (ZER0) wrote:





Chiara <chiara.bologn... (AT) gmail (DOT) com> wrote:
non riesco a linkare il mio dropdwon menu' a una nuova finestra.
Il dropdown menu' si trova in una popup e dovrebbe linkare a una
finestra esterna altrimenti mi si carica nella popup.

Vuoi caricare la pagina nella finestra esterna che ha aperto la popup, o
su un'altra finestra? In ogni caso, riprendendo quello
che hai pubblicato, lo modificherei in questo modo:

script type="text/javascript"
* * * * function MM_jumpMenu( targ, selObj, restore, feat ){
* * * * * * * * if ( typeof targ=="string" )
* * * * * * * * * * * * window.open(selObj.value, targ, feat||"" );
* * * * * * * * else if ( targ && targ.location )
* * * * * * * * * * * * targ.location = selObj..value;

* * * * * * * * if ( restore )
* * * * * * * * * * * * selObj.selectedIndex =0; * * *
* * * * }
/script

Ho cercato di mantenere inalterata la chiamata alla funzione.

E se vuoi caricare l'URL nella pagina che ha aperto la popup si
deve modificare l'HTML in questo modo:

* <select name="menu2" onChange="MM_jumpMenu('parent',this.form,1)"

select name = "menu2" onchange="MM_jumpMenu(opener,this,1);

--
"Se c'è qualcosa di più importante del mio ego su questa nave,
la voglio catturata e fucilata."

Quello che vorrei fare è semplicemente aprire una nuova finestra a
partire da link nel dropdown menu' della mia popup, nella quale ho
inserito il testo che vi ho mandato...- Nascondi testo tra virgolette -

- Mostra testo tra virgolette -
In parole povere, vorrei che la pagina che carico scegliendo un link
nel dropdown menu' non si caricasse nella stessa pagina (che è una
popup) del dropdown menu.
Praticamente quello che succede è che la pagina a cui ho linkato si
ricarica nella stessa pagina che è un popup, invece io vorrei che si
aprisse una nuova pagina/finestra.
Spero sia chiaro!!!


Reply With Quote
  #7  
Old   
ZER0
 
Posts: n/a

Default Re: linkare a una nuova finestra da un dropdown menu' - 04-24-2008 , 10:35 AM



Chiara <chiara.bolognini (AT) gmail (DOT) com> wrote:

Quote:
script type="text/javascript"
function MM_jumpMenu( targ, selObj, restore, feat ){
if ( typeof targ=="string" )
window.open(selObj.value, targ, feat||"" );
else if ( targ && targ.location )
targ.location = selObj.value;

if ( restore )
selObj.selectedIndex = 0;
}
/script

Ho cercato di mantenere inalterata la chiamata alla funzione.

E se vuoi caricare l'URL nella pagina che ha aperto la popup si
deve modificare l'HTML in questo modo:

select name="menu2" onChange="MM_jumpMenu('parent',this.form,1)"

select name = "menu2" onchange="MM_jumpMenu(opener,this,1);

--
"Se c'è qualcosa di più importante del mio ego su questa nave,
la voglio catturata e fucilata."

Quello che vorrei fare è semplicemente aprire una nuova finestra a
partire da link nel dropdown menu' della mia popup, nella quale ho
inserito il testo che vi ho mandato...- Nascondi testo tra virgolette -

- Mostra testo tra virgolette -

In parole povere, vorrei che la pagina che carico scegliendo un link
nel dropdown menu' non si caricasse nella stessa pagina (che è una
popup) del dropdown menu.
Praticamente quello che succede è che la pagina a cui ho linkato si
ricarica nella stessa pagina che è un popup, invece io vorrei che si
aprisse una nuova pagina/finestra.
Quindi hai un dropdown menu (select) che è posto in una popup,
e vuoi che selezionando una voce, venga aperta un'altra popup;
è così?

In tal caso, prendi la funzione così come te l'ho modificata e
cambia l'HTML di conseguenza:

<select name = "menu2" onchange="MM_jumpMenu('',this,1);

In questo modo ogni scelta crea una nuova popup. Se invece ciò
che vuoi è che ogni scelta venga aperta in una nuova finestra,
ma che tutte le scelte sovrascrivano il contenuto della scelta
precedente, devi dare un nome alla finestra:

<select name = "menu2" onchange="MM_jumpMenu('nuovaPopup',this,1);

In previsione di una cosa del genere, avevo aggiunto un quarto
parametro per definire le opzioni di apertura di una popup. In
questo modo, puoi fare ad esempio:

<select name = "menu2"
onchange="MM_jumpMenu('nuovaPopup',this,1,'width=3 20,height=200');
Usa la funzione così come te l'ho modificata nel mio post.

Quote:
Spero sia chiaro!!!
Spero di esserlo stato anche io.


--
"Se c'è qualcosa di più importante del mio ego su questa nave,
la voglio catturata e fucilata."


Reply With Quote
  #8  
Old   
Chiara
 
Posts: n/a

Default Re: linkare a una nuova finestra da un dropdown menu' - 04-25-2008 , 02:42 AM



On 24 Apr, 17:35, zer0.sh... (AT) libero (DOT) it (ZER0) wrote:
Quote:
Chiara <chiara.bologn... (AT) gmail (DOT) com> wrote:
script type="text/javascript"
* * * * function MM_jumpMenu( targ, selObj, restore, feat ){
* * * * * * * * if ( typeof targ=="string" )
* * * * * * * * * * * * window.open(selObj.value, targ, feat||"" );
* * * * * * * * else if ( targ && targ.location )
* * * * * * * * * * * * targ.location = selObj.value;

* * * * * * * * if ( restore )
* * * * * * * * * * * * selObj.selectedIndex= 0; * * *
* * * * }
/script

Ho cercato di mantenere inalterata la chiamata alla funzione.

E se vuoi caricare l'URL nella pagina che ha aperto la popup si
deve modificare l'HTML in questo modo:

* <select name="menu2" onChange="MM_jumpMenu('parent',this.form,1)"

select name = "menu2" onchange="MM_jumpMenu(opener,this,1);

--
"Se c'è qualcosa di più importante del mio ego su questa nave,
la voglio catturata e fucilata."

Quello che vorrei fare è semplicemente aprire una nuova finestra a
partire da link nel dropdown menu' della mia popup, nella quale ho
inserito il testo che vi ho mandato...- Nascondi testo tra virgolette -

- Mostra testo tra virgolette -

In parole povere, vorrei che la pagina che carico scegliendo un link
nel dropdown menu' non si caricasse nella stessa pagina (che è una
popup) del dropdown menu.
Praticamente quello che succede è che la pagina a cui ho linkato si
ricarica nella stessa pagina che è un popup, invece io vorrei che si
aprisse una nuova pagina/finestra.

Quindi hai un dropdown menu (select) che è posto in una popup,
e vuoi che selezionando una voce, venga aperta un'altra popup;
è così?

In tal caso, prendi la funzione così come te l'ho modificata e
cambia l'HTML di conseguenza:

select name = "menu2" onchange="MM_jumpMenu('',this,1);

In questo modo ogni scelta crea una nuova popup. Se invece ciò
che vuoi è che ogni scelta venga aperta in una nuova finestra,
ma che tutte le scelte sovrascrivano il contenuto della scelta
precedente, devi dare un nome alla finestra:

select name = "menu2" onchange="MM_jumpMenu('nuovaPopup',this,1);

In previsione di una cosa del genere, avevo aggiunto un quarto
parametro per definire le opzioni di apertura di una popup. In
questo modo, puoi fare ad esempio:

select name = "menu2"
onchange="MM_jumpMenu('nuovaPopup',this,1,'width=3 20,height=200');
Usa la funzione così come te l'ho modificata nel mio post.

Spero sia chiaro!!!

Spero di esserlo stato anche io.

--
"Se c'è qualcosa di più importante del mio ego su questa nave,
la voglio catturata e fucilata."- Nascondi testo tra virgolette -

- Mostra testo tra virgolette -
No, io non voglio aprire un'altra popup ma solo una semplice finestra/
pagina.
Cambia qualcosa in questo caso? Grazie mille.


Reply With Quote
  #9  
Old   
Chiara
 
Posts: n/a

Default Re: linkare a una nuova finestra da un dropdown menu' - 04-25-2008 , 02:48 AM



On 24 Apr, 17:35, zer0.sh... (AT) libero (DOT) it (ZER0) wrote:
Quote:
Chiara <chiara.bologn... (AT) gmail (DOT) com> wrote:
script type="text/javascript"
* * * * function MM_jumpMenu( targ, selObj, restore, feat ){
* * * * * * * * if ( typeof targ=="string" )
* * * * * * * * * * * * window.open(selObj.value, targ, feat||"" );
* * * * * * * * else if ( targ && targ.location )
* * * * * * * * * * * * targ.location = selObj.value;

* * * * * * * * if ( restore )
* * * * * * * * * * * * selObj.selectedIndex= 0; * * *
* * * * }
/script

Ho cercato di mantenere inalterata la chiamata alla funzione.

E se vuoi caricare l'URL nella pagina che ha aperto la popup si
deve modificare l'HTML in questo modo:

* <select name="menu2" onChange="MM_jumpMenu('parent',this.form,1)"

select name = "menu2" onchange="MM_jumpMenu(opener,this,1);

--
"Se c'è qualcosa di più importante del mio ego su questa nave,
la voglio catturata e fucilata."

Quello che vorrei fare è semplicemente aprire una nuova finestra a
partire da link nel dropdown menu' della mia popup, nella quale ho
inserito il testo che vi ho mandato...- Nascondi testo tra virgolette -

- Mostra testo tra virgolette -

In parole povere, vorrei che la pagina che carico scegliendo un link
nel dropdown menu' non si caricasse nella stessa pagina (che è una
popup) del dropdown menu.
Praticamente quello che succede è che la pagina a cui ho linkato si
ricarica nella stessa pagina che è un popup, invece io vorrei che si
aprisse una nuova pagina/finestra.

Quindi hai un dropdown menu (select) che è posto in una popup,
e vuoi che selezionando una voce, venga aperta un'altra popup;
è così?

In tal caso, prendi la funzione così come te l'ho modificata e
cambia l'HTML di conseguenza:

select name = "menu2" onchange="MM_jumpMenu('',this,1);

In questo modo ogni scelta crea una nuova popup. Se invece ciò
che vuoi è che ogni scelta venga aperta in una nuova finestra,
ma che tutte le scelte sovrascrivano il contenuto della scelta
precedente, devi dare un nome alla finestra:

select name = "menu2" onchange="MM_jumpMenu('nuovaPopup',this,1);

In previsione di una cosa del genere, avevo aggiunto un quarto
parametro per definire le opzioni di apertura di una popup. In
questo modo, puoi fare ad esempio:

select name = "menu2"
onchange="MM_jumpMenu('nuovaPopup',this,1,'width=3 20,height=200');
Usa la funzione così come te l'ho modificata nel mio post.

Spero sia chiaro!!!

Spero di esserlo stato anche io.

--
"Se c'è qualcosa di più importante del mio ego su questa nave,
la voglio catturata e fucilata."- Nascondi testo tra virgolette -

- Mostra testo tra virgolette -
Scusa cosa vuol dire che "tutte le scelte sovrascrivano il contenuto
della scelta
precedente"? Io vorrei che ogni link linki a una pagina diversa.
Ad esempio cani linki a www.cani.it, gatti a www.gatti.it, ecc.


Reply With Quote
  #10  
Old   
Chiara
 
Posts: n/a

Default Re: linkare a una nuova finestra da un dropdown menu' - 04-25-2008 , 02:53 AM



On 24 Apr, 17:35, zer0.sh... (AT) libero (DOT) it (ZER0) wrote:
Quote:
Chiara <chiara.bologn... (AT) gmail (DOT) com> wrote:
script type="text/javascript"
* * * * function MM_jumpMenu( targ, selObj, restore, feat ){
* * * * * * * * if ( typeof targ=="string" )
* * * * * * * * * * * * window.open(selObj.value, targ, feat||"" );
* * * * * * * * else if ( targ && targ.location )
* * * * * * * * * * * * targ.location = selObj.value;

* * * * * * * * if ( restore )
* * * * * * * * * * * * selObj.selectedIndex= 0; * * *
* * * * }
/script

Ho cercato di mantenere inalterata la chiamata alla funzione.

E se vuoi caricare l'URL nella pagina che ha aperto la popup si
deve modificare l'HTML in questo modo:

* <select name="menu2" onChange="MM_jumpMenu('parent',this.form,1)"

select name = "menu2" onchange="MM_jumpMenu(opener,this,1);

--
"Se c'è qualcosa di più importante del mio ego su questa nave,
la voglio catturata e fucilata."

Quello che vorrei fare è semplicemente aprire una nuova finestra a
partire da link nel dropdown menu' della mia popup, nella quale ho
inserito il testo che vi ho mandato...- Nascondi testo tra virgolette -

- Mostra testo tra virgolette -

In parole povere, vorrei che la pagina che carico scegliendo un link
nel dropdown menu' non si caricasse nella stessa pagina (che è una
popup) del dropdown menu.
Praticamente quello che succede è che la pagina a cui ho linkato si
ricarica nella stessa pagina che è un popup, invece io vorrei che si
aprisse una nuova pagina/finestra.

Quindi hai un dropdown menu (select) che è posto in una popup,
e vuoi che selezionando una voce, venga aperta un'altra popup;
è così?

In tal caso, prendi la funzione così come te l'ho modificata e
cambia l'HTML di conseguenza:

select name = "menu2" onchange="MM_jumpMenu('',this,1);

In questo modo ogni scelta crea una nuova popup. Se invece ciò
che vuoi è che ogni scelta venga aperta in una nuova finestra,
ma che tutte le scelte sovrascrivano il contenuto della scelta
precedente, devi dare un nome alla finestra:

select name = "menu2" onchange="MM_jumpMenu('nuovaPopup',this,1);

In previsione di una cosa del genere, avevo aggiunto un quarto
parametro per definire le opzioni di apertura di una popup. In
questo modo, puoi fare ad esempio:

select name = "menu2"
onchange="MM_jumpMenu('nuovaPopup',this,1,'width=3 20,height=200');
Usa la funzione così come te l'ho modificata nel mio post.

Spero sia chiaro!!!

Spero di esserlo stato anche io.

--
"Se c'è qualcosa di più importante del mio ego su questa nave,
la voglio catturata e fucilata."- Nascondi testo tra virgolette -

- Mostra testo tra virgolette -
GRAZIEEEEE, ho capito!
E' esattamente questo che mi serviva: <select name = "menu2"
onchange="MM_jumpMenu(opener,this,1);
Davvero non so come rignraziarti!


Reply With Quote
Reply




Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off



Powered by vBulletin Version 3.5.4
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.