Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2003
    Messaggi
    605

    Interccettare invio "\n\r" in text area

    Ciao a tutti,
    ragazzi questo script mi perseguita da qualche settimana ma ancora non riesco ad vedere la fine..
    sono quassi arrivato ad ottenere quello che voglio.. ma.. c'è ancora qualcosina..
    e confido come sempre... in un vostro aiutino



    Codice PHP:
    <HTML>
    <
    HEAD>
    <
    script language="JavaScript" type="text/javascript">
    <!--
    function 
    conta()
    {
     var 
    lenMax=10;
     var 
    strlength=document.modulo.testo.value.replace(/[\r\n]+/,"").length
     left 
    =lenMax strlength;
     if (
    left <=-1)
     {
      var 
    dif strlength lenMax;
      var 
    value document.modulo.testo.value.substr(0,strlength-dif);
      
    document.modulo.testo.value value;
      var 
    left 0
     
    }
     
    document.modulo.quanti.value=strlength;

         if ( 
    document.modulo.quanti.value==lenMax) {
            
    alert ("Hai raggiunto il max di caratteri disponibili");
        }        
    }
    -->
    </script>
    </HEAD>
    <BODY>
    <form name=modulo>
    <TEXTAREA NAME=testo onKeyUp='conta()' onBlur='conta()' 
    onFocus='conta()' rows="5" cols="34" maxlength="5" id="testo_ab"></TEXTAREA>


    <input type=text name=quanti> max 10
    </form>
    </BODY>
    </HTML> 

    questo script mi conta i caratteri (spazi e punteggiatura) in una text area.. ma non mi deve contare gli invio della tastiera... cio'è i tag \n \r
    con questa soluzione trovata

    var strlength=document.modulo.testo.value.replace(/[\r\n]+/,"").length


    lui in effetti non mi conta gli invio se sono i primi.. ma se do prima due invii scrivo e poi invio.. allora quest'ultimo me lo conta.. come posso risolverlo...
    Poi ancora una cosina nell'alert che ho messo come faccio ad uscire del tutto... visto che mi funge si.. ma mi riappare anche se cerco di fare altro ed andare avatio con un'altro campo da compilare..

    spero in un vostro aiuto

    ciao ciaoooooooooo

    giuseppe

  2. #2
    prova così:
    codice:
     var strlength=document.modulo.testo.value.replace(/[\r\n]+/gi,"").length


    PS: Occhio che se uno usasse Mac o Linux lo script non va perchè utilizzano solo il \r o il \n
    Purtroppo bisogna imparare che il computer non sbaglia...fa solo quello che gli dici di fare

    www.netpolaris.it

  3. #3
    Utente di HTML.it
    Registrato dal
    Jun 2003
    Messaggi
    605
    grande...Shagrat così..
    và..
    ma per alert come posso fare... per farlo usci solo una vola... lo dovrei mettere solo una volta... e magari proprio sulla text area?

  4. #4
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    Originariamente inviato da Shagrat
    PS: Occhio che se uno usasse Mac o Linux lo script non va perchè utilizzano solo il \r o il \n
    ma e' tra quadre, /[\r\n]+/ quindi sbaglio o basta uno dei 2 per avere il match?

  5. #5
    Originariamente inviato da Xinod
    ma e' tra quadre, /[\r\n]+/ quindi sbaglio o basta uno dei 2 per avere il match?
    mi sa che hai ragione...
    Purtroppo bisogna imparare che il computer non sbaglia...fa solo quello che gli dici di fare

    www.netpolaris.it

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.