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

    Textarea e conteggio caratteri

    ciao a tutti,
    questo script credo sempre trovato sul forum:



    Codice PHP:
    <script>

    function 
    wordcount( )
    {
    var 
    cmnt document.getElementById('comment');
    var 
    cnt document.getElementById('wordcount');
    cnt.innerHTML numWords(cmnt.value);
    }

    function 
    numWords(string)
    {
    string string ' ';
    //string = string.replace(/^[^A-Za-z0-9]+/gi, "");
    //string = string.replace(/[^A-Za-z0-9]+/gi, " ");
    var items string.split("");
    //alert(items);
    return items.length -1;
    }
    </script>

    <body>
    <textarea id="comment" onkeyup="wordcount();" onkeydown="wordcount();" rows="10" COLS="60"></textarea>


    <span id="wordcount">n/a</span>
    </body> 
    </BODY>
    </HTML> 


    mi conta le tutte le mie parole incluso spazi e punteggiatura.
    Insoma mi va bene.. se non per il fatto che mi deve conteggiare tutto tranne però quando vado a capo.. si può fare in modo di intercettare questa cosa secondo voi?

    Ciao a tutti Giuseppe

  2. #2
    ho trovato questo codice


    <script language="JavaScript">

    function verEmail(stringa) {
    if (stringa.search(/^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$/) != -1)
    return true;
    else return false;
    }

    function controllo(f) {
    var nome=f.nome;
    var email=f.email;
    var richieste=f.richieste;
    if (nome.value=="") {
    alert("Nome è obbligatorio");
    return false;
    }
    if (email.value=="") {
    alert("e-mail deve contenere un indirizzo e-mail.");
    return false;
    }
    if (!verEmail(email.value)) {
    alert("Inserire un indirizzo e-mail corretto.");
    return false;
    }
    if (richieste.value=="") {
    alert("Richieste è obbligatorio.");
    return false;
    }
    if (richieste.value.replace(/\s*/gi,'') == '') {
    alert("Richieste è obbligatorio.");
    return false;
    }
    if (richieste.value.replace(/\x13\x10*/gi,'') == '') {
    alert("Richieste è obbligatorio.");
    return false;
    }
    return true;
    }

    </script>



    ma nn so se funziona o meno

    http://forum.html.it/forum/showthread/t-664322.html

  3. #3
    Utente di HTML.it
    Registrato dal
    Jun 2003
    Messaggi
    605
    anche se in ritardo.. e di questo mi scuso.... tanto tanto
    volevo ringraziarti del tuo suggerimento...
    e gli do subito un'okkiata
    una buona giornata


    Giuseppe

  4. #4
    Utente di HTML.it
    Registrato dal
    Jun 2003
    Messaggi
    605
    ragà..........
    ancora sta cosa non riesco a risolverla....
    Vi prego un'aiutino...
    se no alla fine mi fa cio un controllo server e basta ma era per farla più carina come cosa...


    Praticamente l'utente deve inserire..
    massimo di 2500 caratteri inclusivo di spazi e punteggiatura.
    e sta funzione trovata mi sembra carina cos magari su 1000 gli posso dare anche un'alert.
    ma proprio non riesco a controllare il tutto....

    ad esempio in questo modo.. non mi conta gli accapo... ed giusto.. solo che se vado a capo e poi scivo non im conta quest'ultima parola...



    la funzione e questa:

    Codice PHP:



    function wordcount( )
    {
    var 
    cmnt document.getElementById('comment');
    var 
    cnt document.getElementById('wordcount');
    cnt.innerHTML numWords(cmnt.value);
    }

    function 
    numWords(string)
    {
    string string ' ';


    string string.replace(/^[^A-Za-z0-9]+/gi" ");
    //string = string.replace(/[^A-Za-z0-9]+/gi, " ");
    string=string.replace(/\x13\x10*/gi,'');


    var 
    items string.split(" ");
    //alert(items);
    return items.length -1;
    }
    </script>

    <body>
    <textarea id="comment" onkeyup="wordcount();" onkeydown="wordcount();" rows="10" COLS="60"></textarea>


    <span id="wordcount">n/a</span>
    </body> 
    un grazie... di cuore...

  5. #5
    Utente di HTML.it
    Registrato dal
    Jun 2003
    Messaggi
    605
    ragazzi....
    ormai posto solo io su questo thread.....
    dicevo...
    forse ho trovato la soluzione su www.sastgroup.com

    Codice PHP:
    <SCRIPT LANGUAGE="javascript">
    function 
    conta(){
    var 
    lenMax=250
    var strlength=document.modulo.testo.value.length
    total 
    = eval("250")
    char = eval(document.modulo.testo.value.length)
    left = eval(total char)
    if (
    left <= "-1")
    {
    var 
    dif = eval(char 250)
    var 
    value document.modulo.testo.value.substr(0,char-dif);
    document.modulo.testo.value value;
    var 
    left "0"
    }
    document.modulo.quanti.value=left
    }

    </script>
    <form name=modulo>
    <TEXTAREA NAME=testo
    onKeyUp='conta()'
    onBlur='conta()'
    onFocus='conta()'
    rows="5"
    cols="34">
    </TEXTAREA>


    <input type=text
    name=quanti>
    max 250
    </SCRIPT>
    </form> 

    e quello che cercavo...devo solo individuare gli accapo per non contarli....
    provato ad inserire dopo
    var value= .......
    value=value.replace(/\x13\x10*/gi,'');

    ma senza risultato....

    qualche suggerimento....?

  6. #6
    Utente di HTML.it
    Registrato dal
    Jun 2003
    Messaggi
    605
    ahh raga.. continuo.. a scrivere solo io in questo post..
    faccio tutto da solo... mi domando e mi rispondo....

    ho quasi risolto....
    Codice PHP:


    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
    <
    HTML>
    <
    HEAD>
    <
    TITLE> New Document </TITLE>
    <
    META NAME="Generator" CONTENT="EditPlus">
    <
    META NAME="Author" CONTENT="">
    <
    META NAME="Keywords" CONTENT="">
    <
    META NAME="Description" CONTENT="">

    <
    SCRIPT LANGUAGE="javascript">
    function 
    conta(obj){

        var 
    lenMax=250
        
    var strlength=document.modulo.testo.value.length
        total 
    = eval("250")
        
    char = eval(document.modulo.testo.value.length)
        
    left = eval(total char)
        if (
    left <= "-1")
        {
        var 
    dif = eval(char 250)
        var 
    value document.modulo.testo.value.substr(0,char-dif);
        
    document.modulo.testo.value value;
        var 
    left "0"
        
    }

        if(
    obj.keyCode!=13)
            
    document.modulo.quanti.value=left
    }
    </script>

    </HEAD>
    <BODY>
    <form name=modulo>
    <TEXTAREA NAME=testo onKeyUp='conta(event)' onBlur='conta(event)' 
    onFocus='conta(event)' rows="5" cols="34" maxlength="5" ></TEXTAREA>


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

    con questo
    if(obj.keyCode!=13)
    document.modulo.quanti.value=left


    riesco a fermare l'incremento dei caratteri quando vado a capo...
    solo che non funge proprio del tutto...
    perche se tipo inizio con due invio lo script no li conta ma appena inizio a scrivere allora conta pure quelli...
    aggia li pescetti... ne uscirò fuori....
    spero di si....
    aspetto un vostro suggerimento...
    non mi fate scrivere solo a me....

    ahahha

    ciao ragazzi e buona notte...

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.