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

    Problema con script di esempio tratto da libro su ajax

    Ciao, ho acquistato qualche giorno fà il libro "ajax" di Enrico Amedeo
    Purtroppo devo segnalare che non è stata indicata dove sia possibile scaricare gli script elencati nel libro.

    Ora tra le cose che spiega all'inizio tratta un esempio di validazione semplice con innerhtml.
    In sostanza invece di un alert dovrebbe comparire un div
    Ho provato a copiare il codice dal libro per una prova sul campo ma devo ammettere che le mie al momento ridotte conoscenze mi creano un problema nel capire dove sta l'errore.
    segnalo inoltre che non si capisce in che modo intervenire sul css.
    Ad ogni modo lo script sotto copiato pari pari a me non funziona ,mi date una mano per favore a capire?
    Grazie
    Codice PHP:
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><? xml version"1.0" encoding="UTF-8"?>

    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>Untitled Document</title>
    <script type="text/javascript">
    function valida() {
    var utente = document.getElementById("utente")
    var empty1 = isEmpty (utente.value)
    var result =!(empty)
    var errore =document.getElementById("errore")
    if (!result) {
        errore.innerHTML ="campo obbligatorio"
    } else
    {
        errore.innerHTML ="&nbsb"
    }
    return result
    }
     </script>
    <style type="text/css">
    <!--
    #errore {
        color: #000;
        background-color: #0FF;
    }
    -->
    </style>
    </head>

    <body>
    <form action="pippo.asp" method="post"  onsubmit="return valida()">

     utente: <input id="utente" name="utente"  />
    <div id="errore"></div>
        
          <input type="submit" name="button" id="button" value="Submit" />
       

    </form>
    </body>
    </html>

  2. #2
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116
    .
    Pietro

  3. #3
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116
    al posto di
    var empty1 = isEmpty(utente.value)

    metti
    var empty = (Trim(utente.value) == "");

    dove Trim è
    codice:
    //-------------------------------------------------------------------
    // rimuove gli spazi iniziali e finali da strValore
    //-------------------------------------------------------------------
    function Trim(strValore)
    {
    	var spaceA = 0;
    	var spaceB = (strValore.length-1);
    
    	while (strValore.charAt(spaceA) == " ")
    	{
    		spaceA++;
    	}
    	if (spaceA < strValore.length) 
    	{
    		while (strValore.charAt(spaceB) == " ")
    		{
    			spaceB--;
    		}
    	
    		return strValore.substring(spaceA,spaceB+1);
    	}
    	else 
    	{
    		return "";
    	}
    }
    Pietro

  4. #4
    Ciao grazie del tuo aiuto si adesso funziona!! pero devo capire
    La funzione Trim è sempre necessaria in questo caso?
    Nell'esempio il div è sempre visibile compare all'interno solo la scritta di errore, come posso farlo apparire associandolo all'evento?
    Immagino sul css con il display block o none??
    Grazie ancora
    Ciao

  5. #5
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116
    Originariamente inviato da Pinetto
    Ciao grazie del tuo aiuto si adesso funziona!! pero devo capire
    La funzione Trim è sempre necessaria in questo caso?
    Nell'esempio il div è sempre visibile compare all'interno solo la scritta di errore, come posso farlo apparire associandolo all'evento?
    Immagino sul css con il display block o none??
    Grazie ancora
    Ciao
    allora, in primis io userei la guida ajax di html.it, gratis e soprattutto migliore

    secondo, l'esercizio ha come scopo di non fare partire il submit se il campo è vuoto. Per fare questo bisogna togliere gli spazi iniziali e finali del campo altrimenti basta mettere uno spazio e il submit si verifica.

    terzo, per rendere visibile/invisibile un elemento basta impostare l'attributo display

    elemento.style.display = "none"; //invisibile
    elemento.style.display = ""; //visibile
    Pietro

  6. #6
    Grazie ancora.
    Si credo proprio che mi leggerò la guida da te suggerita.

    Un'ultima cosa e poi basta, io so rendere visibile o meno l'elemento ma come lo rendo visibile in base all'evento dell'errore?
    Ciao

  7. #7
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116
    aggiungi a
    errore.innerHTML ="campo obbligatorio";
    errore.style.display = "";

    e a
    errore.innerHTML ="&nbsb";
    errore.style.display = "none";


    Pietro

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 © 2024 vBulletin Solutions, Inc. All rights reserved.