Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11
  1. #1

    chiamare due funzioni con onChange

    Ciao raga,
    ho settato due funzioni in js e voglio richiamarle assieme con onChange in un menu a tendina.
    La funzione vai mi apre in una nuova pagina e l'altra mi porta ad una pagina senza aprire una nuova finestra.


    Ecco il codice del menu tendina.
    Solo che non funziona.
    DAtemi una mano , please

    <select name="linea-prodotto" onChange="MM_jumpMenu('parent',this,0);vai(this)">
    <option value="pagina.html">Atala</option>
    <option value="_self|http://www.sito.com">WhistleBikes</option>

  2. #2
    E provare a fare un'unica funzione che contiene tutte le funzioni che devi eseguire? Così ti basta invocare una sola funzione.


  3. #3
    Eh..si ..ma non ci riesco. Sto provando a fondere queste due funzioni (con scarsi risultati):

    function vai(menu){
    var pagina = menu[menu.selectedIndex].value.split("|");
    if(pagina.length == 2)
    window.open(pagina[1], pagina[0]);
    }

    function MM_jumpMenu(targ,selObj,restore){ //v3.0
    eval(targ+".location='"+selObj.options[selObj.selectedIndex].value+"'");
    if (restore) selObj.selectedIndex=0;
    }

    consigli ?

  4. #4
    Prova così:
    codice:
    <select onchange="vai(menu); MM_jumpMenu(targ,selObj,restore);">
    FEDERIX.IT - [Pillola] GRAFICA DEI FORM

    ...ho ancora quella forza che ti serve, quando dici "Si comincia!"

  5. #5
    Originariamente inviato da Simoweb
    Eh..si ..ma non ci riesco. Sto provando a fondere queste due funzioni (con scarsi risultati):

    function vai(menu){
    var pagina = menu[menu.selectedIndex].value.split("|");
    if(pagina.length == 2)
    window.open(pagina[1], pagina[0]);
    }

    function MM_jumpMenu(targ,selObj,restore){ //v3.0
    eval(targ+".location='"+selObj.options[selObj.selectedIndex].value+"'");
    if (restore) selObj.selectedIndex=0;
    }

    consigli ?
    Devi però fare attenzione alla visibilità delle variabili.

    ... ...

    Credo che la soluzione di Federix sia quella giusta. Era così semplice.

  6. #6
    MI dispiace Federix.... ma richiamandola così non si apre più niente.
    Ho provato anche fare:

    <select onchange="MM_jumpMenu('parent', this, 0); vai(this)">
    <option value="_self|http://www.sito.com">Sito</option>

    e almeno mi apre il link ma non su una nuova finestra maledizione !!!

  7. #7
    Scusate ma non ho ancora risolto il mio problema. Qualcuno ha una dritta da darmi ? mi serve proprio far aprire il link in una nuova pagina.


  8. #8
    Utente di HTML.it L'avatar di gizax
    Registrato dal
    Jan 2004
    residenza
    Rome
    Messaggi
    386
    scusa non ho capito.. allora all'onchange della select la pagina attuale deve cambiare pagina e in piu si deve aprire un altra pagina?

    fammi capire

  9. #9
    Ciao Gizax,

    in sostanza quando richiamo da sola la funzione vai funziona e mi apre il mio link su una nuova pagina.

    function vai(menu){
    var pagina = menu[menu.selectedIndex].value.split("|");
    if(pagina.length == 2)
    window.open(pagina[1], pagina[0]);
    }
    Ora chiamo la funzione
    <select name="linea-prodotto" onChange="vai(this)">
    <option value="_self|http://www.sito.com">Sito su nuova pagina</option>
    </select>

    Il mio problema è ke devo integrare questa funzione con un'altra che mi apre altre voci nel menu a tendina e non riesco a far funzionare entrambe le funzioni.

    Ecco l'altra funzione:

    function MM_jumpMenu(targ,selObj,restore){ //v3.0
    eval(targ+".location='"+selObj.options[selObj.selectedIndex].value+"'");
    if (restore) selObj.selectedIndex=0;

    e la richiamo con:
    <select name="linea-prodotto" onChange="MM_jumpMenu('parent',this,0)">
    </select>

    Ho provato a chiamare le due funzioni con lo stesso onChange così e il risultato e che mi apre sia le pagine che il link esterno ma il link me lo apre nella stessa pagina. io invece lo voglio su una pagina nuova

  10. #10
    Utente di HTML.it
    Registrato dal
    Dec 2004
    Messaggi
    30
    Beh prova a mettere un solo onclick e sulla funzione n°1 richiama pure la funzione n°2. Se non devono essere comunque eseguite entrambe metti una variabile di stato.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.