Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 25
  1. #1
    Utente di HTML.it
    Registrato dal
    Dec 2002
    Messaggi
    1,786

    semplificare funzione js

    salve,

    ho questa funzione js:

    codice:
    function vai(targ,selObj,restore){ //v3.0
      eval(targ+".location='"+selObj.options[selObj.selectedIndex].value+"'");
      if (restore) selObj.selectedIndex=0;
    }
    che richiamo così:

    codice:
    vai('parent',this,0)
    vorrei semplificarla in modo che posso chiamarla così:

    codice:
    vai()
    come devo modificare quindi la funzione su scritta ?

    grazie !

    [Scambio Links a Tema] Contattatemi in Privato x + Info.

  2. #2
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    E come faresti a passare il parametro targ? e restore?

    function vai(){
    // metto fisso targ e restore
    targ = "miaFinestra";
    restore = true;
    // fisso anche il selObj
    selOby = document.nomeForm.nomeSelect;

    eval(targ+".location='"+selObj.options[selObj.selectedIndex].value+"'");
    if (restore) selObj.selectedIndex=0;
    }

    Oppure semplificando e ammettendo che il target sia un frame del frameset corrente:

    function vai(){
    parent.miaFinestra.location.href = document.nomeForm.nomeSelect.options
    document.nomeForm.nomeSelect.selectedIndex=0;
    }

    ciao
    Il guaio per i poveri computers e' che sono gli uomini a comandarli.

    Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
    Consultate la discussione in rilievo: script / discussioni utili
    Usate la funzione di Ricerca del Forum

  3. #3
    Utente di HTML.it
    Registrato dal
    Dec 2002
    Messaggi
    1,786
    non devo passare nessun parametro e non uso frameset,

    devo fare solo un elenco-menù dove l'utente seleziona la pagina deve andare.

    grazie !
    [Scambio Links a Tema] Contattatemi in Privato x + Info.

  4. #4
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    Allora basta questo:

    <select ... onchange="loaction.href=this.options[this.selectedIndex].value;">

    ciao
    Il guaio per i poveri computers e' che sono gli uomini a comandarli.

    Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
    Consultate la discussione in rilievo: script / discussioni utili
    Usate la funzione di Ricerca del Forum

  5. #5
    Utente di HTML.it
    Registrato dal
    Dec 2002
    Messaggi
    1,786
    grazie !

    ma io voglio fare una cosa del genere:

    codice:
    <script type="text/JavaScript">
    <!--
    function vai() {
    	location.href=this.options[this.selectedIndex].value;
    }
    //-->
    </script>
    codice:
    <form>
      <select name="pagine" onchange="vai()">
        <option value="pag1.htm">1</option>
        <option value="pag2.htm">2</option>
        <option value="pag3.htm">3</option>
      </select>
    </form>
    pultroppo non va

    da questo errore:
    'this.options' è nullo o non è un oggetto
    come mai ?

    grazie
    [Scambio Links a Tema] Contattatemi in Privato x + Info.

  6. #6
    Utente di HTML.it
    Registrato dal
    Feb 2002
    Messaggi
    867
    La tua funzione non ha idea di cosa sia "this" se non gli passi nessun parametro non puoi funzionare, o lo metti nell onChange come ti hanno suggerito oppure devi mettere un parametro alla tua funzione.

    Ciao ciao
    No pvt per sollecitare risposte, grazie.

  7. #7
    Utente di HTML.it
    Registrato dal
    Dec 2002
    Messaggi
    1,786
    e cioè cosa devo fare ?

    grazie !
    [Scambio Links a Tema] Contattatemi in Privato x + Info.

  8. #8
    Utente di HTML.it
    Registrato dal
    Dec 2002
    Messaggi
    1,786
    up
    [Scambio Links a Tema] Contattatemi in Privato x + Info.

  9. #9
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    Rileggiti le mie risposte... sono tutte valida ma guarda in particolar modo la seconda parte della prima.

    ciao
    Il guaio per i poveri computers e' che sono gli uomini a comandarli.

    Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
    Consultate la discussione in rilievo: script / discussioni utili
    Usate la funzione di Ricerca del Forum

  10. #10
    Utente di HTML.it
    Registrato dal
    Dec 2002
    Messaggi
    1,786
    codice:
    function vai() { 
    	parent.this.location.href = document.getElementById('form').menu.options;
    	document.getElementById('form').menu.selectedIndex=0; 
    }
    codice:
    <form id="form">
      <select name="menu" onchange="vai()">
        <option value="pagina.htm">1</option>
        <option value="altre2.htm">2</option>
      </select>
    </form>
    non va

    come mai ?

    grazie !
    [Scambio Links a Tema] Contattatemi in Privato x + Info.

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.