• Bannato User Attivo

    come selezioni il testo dentro un campo in modo automatico?

    Come fa il sito di youtube a fare in modo che io quando clicco con il mouse sul codice da copiare/incollare del video questo mi viene selezionato tutto in modo automatico.

    Come fanno?

    Ed è possibile selezionarlo ed anche copiarlo "negli appunti" (come per ctrl-c) cliccando per esempio su un pulsantino?


  • User Attivo

    Utilizza Javascript

    Codice Javascript

    
    <script language="JavaScript">
        function copia(testo)
        {
            var tmp = eval("document." + testo);
            tmp.focus();
            tmp.select();
            txt_op = tmp.createTextRange();
            txt_op.execCommand("Copy");
        }
    </script>
    
    

    Codice del FORM

    
    <form id="mioForm" name="mioForm" method="POST" action="void.php">
        <input name="testo" type="text" id="testo" value="ciao" onclick="copia('mioForm.testo');">
    </form>
    
    

    Ciao :ciauz:


  • Bannato User Attivo

    Grazie.
    Il codice javascript va nell'head della pagina giusto?
    Può interferire con altri script?

    Per una textarea può andar bene così?

    echo "<textarea name=\"upload_text\" cols=\"50\" rows=\"5\" onclick=\"copia('mioForm.testo');\">";
    

  • Bannato User Attivo

    Ps.... che pagina metto per il form? Non ho la necessità di mandarlo ad un'altra pagina... lascio void.php?


  • User Attivo

    Uno script Javascript solitamente non interferisce con altri, a meno non ci sono due script che eseguano le stesse funzioni o simili sullo stesso oggetto, cosa molto rara.
    Nel form, la pagina "void.php" è casuale, dato che non vuoi inviare dati ad altre pagine, sostituiscilo con "". (... action="" )

    Ciao!


  • Bannato User Attivo

    cioè con il nulla?
    E se lascio void.php che è una pagina che non esiste? :fagiano:

    Dimenticavo... ora mi funziona, il test osi seleziona in modo automatico.

    Mi chiedevo se fosse possibile già copiarlo negli appunti in modo da far evitare all'utente il tasto destro copia o il ctrl+c...

    mi ricordo che in un sito si poteva fare così


  • User Attivo

    Allora:

    1. Se metti "void.php" e nel form c'è un pulsante, appena un utente lo preme, avviene il trasferimento alla pagina "void.php" anche se questa non esiste, mostrando l'errore "Pagina non trovata".
    2. Per avere una copia immediata del testo, all'avvio della pagina devi modificare il codice in questo modo:

    [html]
    <body onload="copia('mioForm.testo');">
    [/html]E' fondamentale che nel corpo della pagina ci sia un form di nome "mioForm" con un capo di testo chiamato "testo".
    P.S: I nomi si possono cambiare.

    Ciao!


  • Bannato User Attivo

    Il codice proposto nel post 2 mi seleziona tutto il testo ma non mi fa il copia in modo automatico (al click sul testo). Esiste tale funzione?
    Ovvero io clicco sul testo ed automaticamente è copiato negli appunti.
    Grazie.


  • User Attivo

    @fabioski said:

    ...Ovvero io clicco sul testo ed automaticamente è copiato negli appunti.

    Cosa intendi con questo?
    La funzione che ti ho fatto vedere, copia il contenuto.
    Funziona come se un utente, seleziona tutto il testo della casella e mette copia.

    Ciao!