Visualizzazione dei risultati da 1 a 6 su 6
  1. #1

    keyCode Per andare a capo

    Salve a tutti, se ho un'input area che alla pressione del tasto INVIO fa partire una funzione, come posso fare (come per le comuni chat) a fare in modo che alla pressione di shift+enter il cursore vada a capo al posto di eseguire la funzione. Visto che, in questo caso, se si preme shift+enter, si considera comunque la presione del tasto 13 (invio):
    Codice PHP:
    <!DOCTYPE html>
    <
    html>
    <
    head>
    <
    script>
     function 
    myFunction() {
      
    alert("Hai premuto enter");
     }
    </script>
    </head>
    <body>



    Lorem...</p>

    <input type="text" onkeypress="if (event.keyCode == 13) myFunction()">

    </body>
    </html> 

  2. #2
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    Togli qualunque pulsante type=submit o type=image

    Eventualmente si puo' sostituire con un

    <input type=button ... onclick="this.form.submit()">

    e con una lieve complicazione gestire anche il controllo/validazione del form.

    Oppure adotta questo:

    <script>
    var fl_sub = false;
    </script>
    <form ... onsubmit="return fl_sub">
    ...
    <input type=submit ... onclick="fl_sub=true">
    </form>
    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
    Originariamente inviato da br1
    Togli qualunque pulsante type=submit o type=image

    Eventualmente si puo' sostituire con un

    <input type=button ... onclick="this.form.submit()">

    e con una lieve complicazione gestire anche il controllo/validazione del form.

    Oppure adotta questo:

    <script>
    var fl_sub = false;
    </script>
    <form ... onsubmit="return fl_sub">
    ...
    <input type=submit ... onclick="fl_sub=true">
    </form>
    Grazie br1, ho provato a seguire le tue indicazioni, ma il risultato non cambia... forse sbaglio qualcosa io
    Potresti cortesemente farmi un'esempio, anche modificando quello da me riportato sopra?

  4. #4
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    Scusa ho riletto meglio.... ma "a capo" dove? in un input di una sola riga?
    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
    Originariamente inviato da br1
    Scusa ho riletto meglio.... ma "a capo" dove? in un input di una sola riga?
    Si, forse mi sono spiegato male e/o ho scritto un esempio non del tutto attinente. In pratica, stò programmando una chat e volevo che si comportasse come skype (ad esempio): in skype quando si scrive un messaggio e si preme invio, il messaggio viene inviato e per andare a capo durante la scrittura del messaggio basta premere shift+invio.

  6. #6
    Ho risolto così:
    Codice PHP:
    function isKeyPressed(event) {
      if(
    event.keyCode == 13) {
        if(
    event.shiftKey == 1) {
          
    //new line
        
    } else {
          
    shoutIt(); //send
        
    }
      }

    e inserendo ad esempio, nel form: onkeypress="isKeyPressed(event)"
    Grazie comunque per i consigli!!!
    SI PUO' CHIUDERE

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.