Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it
    Registrato dal
    Sep 2006
    Messaggi
    80

    Script conta caratteri e Firefox

    Qualcuno potrebbe aiutarmi? Il seguente script in javascript conta i caratteri presenti in un campo di testo, limitandoli a 250, il problema e che con Explorer 6 Nessun Problema, mentre invece Firefox non visualizza i caratteri rimanenti, in cosa può consistere l'errore?

    Codice PHP:
    <script type="text/javascript">

    var 
    ns6=document.getElementById&&!document.all

    function restrictinput(maxlength,e,placeholder)
    {
        if (
    window.event&&event.srcElement.value.length>=maxlength)
            return 
    false
        
    else if (e.target&&e.target==eval(placeholder)&&e.target.value.length>=maxlength)
        {
            var 
    pressedkey=/[a-zA-Z0-9.,/]/ //detect alphanumeric keys
            
    if (pressedkey.test(String.fromCharCode(e.which)))
            
    e.stopPropagation()
        }
    }

    function 
    countlimit(maxlength,e,placeholder)
    {
        var 
    theform=eval(placeholder)
        var 
    lengthleft=maxlength-theform.value.length
        
    var placeholderobj=document.alldocument.all[placeholder] : document.getElementById(placeholder)
        if (
    window.event||e.target&&e.target==eval(placeholder))
        {
            if (
    lengthleft<0)
                
    theform.value=theform.value.substring(0,maxlength)
            
    placeholderobj.innerHTML=lengthleft
        
    }
    }

    function 
    displaylimit(thenametheidthelimit)
    {
        var 
    theform=theid!=""document.getElementById(theid) : thename
        
    var limit_text='Puoi inserire ancora <span id="'+theform.toString()+'">'+thelimit+'</span> caratteri'
        
    if (document.all||ns6)
        
    document.write(limit_text)
        if (
    document.all)
        {
            eval(
    theform).onkeypress=function(){ return restrictinput(thelimit,event,theform)}
            eval(
    theform).onkeyup=function(){ countlimit(thelimit,event,theform)}
        }
        else if (
    ns6){
            
    document.body.addEventListener('keypress', function(event) { restrictinput(thelimit,event,theform) }, true);
            
    document.body.addEventListener('keyup', function(event) { countlimit(thelimit,event,theform) }, true);
        }
    }
    </script>
    <textarea name="descrizione" cols="20" rows="3" id="testo">Nessuna</textarea>

    <script language="javascript">
    displaylimit("","descrizione",250)
    </script> 

  2. #2
    Utente di HTML.it L'avatar di floyd
    Registrato dal
    Apr 2001
    Messaggi
    3,837
    getElementById cerca un elemento in base a un id
    displaylimit("","testo",250)

  3. #3
    Utente di HTML.it
    Registrato dal
    Sep 2006
    Messaggi
    80
    La console javascript di firefox segnala il seguente errore! Nessuno mi è d'aiuto?

    Errore: theform has no properties
    File sorgente: http://.......

  4. #4
    Utente di HTML.it
    Registrato dal
    Sep 2006
    Messaggi
    80
    Grazie 10000 risolto, mio dio che errore banale

  5. #5
    Utente di HTML.it
    Registrato dal
    Sep 2006
    Messaggi
    80
    Qualcuno mi ri-aiuta a distanza di tempo su questo script? in pratica tutto funziona bene, però una volta che invio il form, ed effettuo controlli, se invio una richiesta history.back(); il box torna vuoto, mentre con altri form senza questa funzione il box contiene tutto il testo inserito prima dell'inoltro.

    Può essere causa del delimitatore che svuota il box? Come dovrei modificare la cosa?

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.