Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it
    Registrato dal
    May 2002
    Messaggi
    268

    passare dati da select a input su più form

    Con il codice sottostante quando clicco sull'input si apre una finestrella con una selezione multipla. Se scelgo una delle opzioni, si chiude la finestrella e il valore scelto si inserisce nell'input.

    La mia necessità ora è di utilizzare la stessa finestrella di selezione multipla per più input su form diversi.
    Mi spiego meglio:

    form 1
    input 1 -> clicco -> finestrella select A -> compilo input 1
    chiudo form

    form 2
    input 2 -> clicco -> finestrella select A(sempre la stessa) -> compilo input2
    chiudo form 2
    ...

    Credo che la soluzione sia di poter passare alla funzione il nome della input e del form, ma mi frega il fatto che per passare il dato la select deve appartenere allo stesso form.

    Grazie

    Codice:

    <HTML>
    <HEAD>
    <style>

    <!--
    #selezione
    {
    position:absolute;
    width:140px;
    line-height:20px;
    visibility:hidden;
    }
    -->
    </style>



    <script language="JavaScript1.2">
    function showselezione()
    {
    selezione.style.left=document.body.scrollLeft+even t.clientX
    selezione.style.top=document.body.scrollTop+event. clientY
    selezione.style.visibility="visible"
    return false
    }

    function hideselezione()
    {
    var sel = document.prova.opzione.selectedIndex
    prova.testo.value = document.prova.opzione.options[sel].value
    selezione.style.visibility="hidden"
    }

    </script>
    </HEAD>
    <BODY bgcolor="white" >
    <form NAME="prova">
    <!--[if IE]>
    <div id="selezione">
    <select name="opzione" size="3" onChange="hideselezione();">
    <option value="100000000000">100000000000</option>
    <option value="200000000000">200000000000</option>
    <option value="300000000000">300000000000</option>
    <option value="400000000000">400000000000</option>
    </select></div>
    <![endif]-->

    <INPUT TYPE="text" NAME="testo" onFocus="showselezione();">
    </form>
    </body>
    </html>

  2. #2
    Utente di HTML.it
    Registrato dal
    May 2002
    Messaggi
    268
    Per chi è interessato, mi rispondo da solo:


    <HTML>
    <HEAD>
    <style>

    <!--
    #selezione
    {
    position:absolute;
    width:140px;
    line-height:20px;
    visibility:hidden;
    }
    -->
    </style>



    <script language="JavaScript1.2">
    function showselezione(thisform)
    {
    uno.qualeform.value = thisform;
    selezione.style.left=document.body.scrollLeft+even t.clientX
    selezione.style.top=document.body.scrollTop+event. clientY
    selezione.style.visibility="visible"
    return false;
    }


    function hideselezione()
    {
    var q = document.uno.qualeform.value;
    var sel = document.uno.opzione.selectedIndex;
    document[q].testo.value = document.uno.opzione.options[sel].value
    selezione.style.visibility="hidden"
    }


    </script>
    </HEAD>
    <BODY bgcolor="white" >
    <form name="uno">
    <!--[if IE]>
    <div id="selezione">
    <input type="hidden" name="qualeform">
    <select name="opzione" size="3" onChange="hideselezione();">
    <option value="100000000000">100000000000</option>
    <option value="200000000000">200000000000</option>
    <option value="300000000000">300000000000</option>
    <option value="400000000000">400000000000</option>
    </select></div>
    <![endif]-->
    </form>

    <form NAME="prova">
    <INPUT TYPE="text" NAME="testo" onFocus="showselezione('prova');">
    </form>

    <form NAME="prova1">
    <INPUT TYPE="text" NAME="testo" onFocus="showselezione('prova1');">
    </form>
    </body>


    Grazie MARTEDI, sei un grande!

  3. #3
    Utente di HTML.it
    Registrato dal
    May 2002
    Messaggi
    268
    Per chi vuole approfondire, con questa versione è possibile aggiungere più selezioni su input differenti:


    <HTML>
    <HEAD>
    <style>

    <!--
    #sel1
    {
    position:absolute;
    width:140px;
    line-height:20px;
    visibility:hidden;
    }
    -->

    #sel2
    {
    position:absolute;
    width:140px;
    line-height:20px;
    visibility:hidden;
    }
    -->
    </style>



    <script language="JavaScript1.2">
    function showsel1(thisform)
    {
    f1.q1.value = thisform;
    sel1.style.left=document.body.scrollLeft+event.cli entX
    sel1.style.top=document.body.scrollTop+event.clien tY
    sel1.style.visibility="visible"
    return false;
    }


    function hidesel1()
    {
    var qq1 = document.f1.q1.value;
    var sel = document.f1.o1.selectedIndex;
    document[qq1].t1.value = document.f1.o1.options[sel].value
    sel1.style.visibility="hidden"
    }

    function showsel2(thisform)
    {
    f1.q2.value = thisform;
    sel2.style.left=document.body.scrollLeft+event.cli entX
    sel2.style.top=document.body.scrollTop+event.clien tY
    sel2.style.visibility="visible"
    return false;
    }


    function hidesel2()
    {
    var qq2 = document.f1.q2.value;
    var sel = document.f1.o2.selectedIndex;
    document[qq2].t2.value = document.f1.o2.options[sel].value
    sel2.style.visibility="hidden"
    }

    </script>
    </HEAD>
    <BODY bgcolor="white" >
    <form name="f1">
    <!--[if IE]>
    <div id="sel1">
    <input type="hidden" name="q1">
    <select name="o1" size="3" onChange="hidesel1();">
    <option value="100000000000">100000000000</option>
    <option value="200000000000">200000000000</option>
    <option value="300000000000">300000000000</option>
    <option value="400000000000">400000000000</option>
    </select></div>

    <div id="sel2">
    <input type="hidden" name="q2">
    <select name="o2" size="3" onChange="hidesel2();">
    <option value="500000000000">500000000000</option>
    <option value="600000000000">600000000000</option>
    <option value="700000000000">700000000000</option>
    <option value="800000000000">800000000000</option>
    </select></div>
    <![endif]-->
    </form>

    <form NAME="prova1">
    <INPUT TYPE="text" NAME="t1" onFocus="showsel1('prova1');">
    <INPUT TYPE="text" NAME="t2" onFocus="showsel2('prova1');">
    </form>

    <form NAME="prova2">
    <INPUT TYPE="text" NAME="t1" onFocus="showsel1('prova2');">
    <INPUT TYPE="text" NAME="t2" onFocus="showsel2('prova2');">
    </form>


    </body>
    </html>

  4. #4
    Utente di HTML.it
    Registrato dal
    May 2002
    Messaggi
    268
    Ma perchè faccio tutto questo?

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.