Fehler in Javascript-Formularprüfungs funktionen finden

Dieses Thema im Forum "Webentwicklung" wurde erstellt von BladeFire, 8. Februar 2015 .

Schlagworte:
  1. 8. Februar 2015
    Hallo,

    was habe ich falsch gemacht? (Neu in JS)

    Code:
    <script type="text/javascript">
    function gesamtname()
    {
     if(document.formular.kontakt.gesamtname.value=="")
     {
     document.all.gesamtname.style.border ="red"; 
     } else
     {
     document.all.gesamtname.style.border ="green"; 
     }
    }
    function email()
    {
     if(document.formular.kontakt.email.value=="" || document.formular.kontakt.email.value.searh('@')== -1 || document.formular.kontakt.email.value.searh('-')== -1)
     {
     document.all.email.style.border ="red"; 
     } else
     {
     document.all.email.style.border ="green"; 
     }
    }
    function betreff()
    {
     if(document.formular.kontakt.betreff.value=="")
     {
     document.all.betreff.style.border ="red"; 
     } else
     {
     document.all.betreff.style.border ="green"; 
     }
    }
    function mitteilung()
    {
     if(document.formular.kontakt.mitteilung.value=="")
     {
     document.all.mitteilung.style.border ="red"; 
     } else
     {
     document.all.mitteilung.style.border ="green"; 
     }
    }
    function captcha()
    {
     if(document.formular.kontakt.captcha.value=="")
     {
     document.all.captcha.style.border ="red"; 
     } else
     {
     document.all.captcha.style.border ="none"; 
     }
    }
    </script>
    
    <form method="post" action="index.php?site=kontakt" name="kontakt">
     <table>
     <tr>
     <td>
     Name:
     </td>
     <td>
     <input type="text" name="gesamtname" value="" placeholder="Dein Name" id="gesantname" onfocus="gesamtname()" />
     </td>
     </tr>
     <tr>
     <td>
     E-mail Adresse:
     </td>
     <td>
     <input type="text" name="email" value="" placeholder="max-müller@gmx.at" id="email" onfocus="email()" />
     </td>
     </tr>
     <tr>
     <td>
     Betreff:
     </td>
     <td>
     <input type="text" name="betreff" placeholder="Betreff" id="betreff" onfocus="betreff()"/>
     </td>
     </tr>
     <tr>
     <td>
     Mitteilung:
     </td>
     <td>
     <textarea rows="5" cols="50" style="max-width: 500px; max-height: 500px;" placeholder="Deine Mitteilung" name="mitteilung" value="" id="mitteilung" onfocus="mitteilung()"></textarea>
     </td>
     </tr>
     <tr>
     <td>
     Captcha:
     </td>
     <td>
     <img src="captcha.php" height="40" width="130">
     </td>
     </tr>
     <tr>
     <td>
     Captcha-Eingabe:
     </td>
     <td>
     <input type="text" name="captcha" placeholder="DCk3b" id="captcha" onfocus="captcha()" />
     </td>
     </tr>
     <tr>
     <td colspan="2">
     </td>
     </table>
     
     <input type="submit" >
    </form> 

    Lg Simon
     
  2. 8. Februar 2015
    AW: Habe fehler in Javascript-Formularprüfungs funktionen. Welchen?

    Was funktioniert denn nicht?

    Was mir direkt auffällt ist "searh" soll wohl "search" heißen?

    Nachtrag:
    Davon abgesehen solltest du nicht onfocus sondern onchange und oninput nutzen.
    Warum prüfst du ob in der E-Mail ein Bindestrich "-" vorhanden ist? In meiner ist keiner und würde daher nicht funktionieren.
     
  3. 12. Februar 2015
    AW: Fehler in Javascript-Formularprüfungs funktionen finden

    Danke für deine Antwort. Ich habe es nun so gelöst

    Code:
    [SPOILER]<script type="text/javascript">
    //------------------------------------------------
    window.onerror = Fehlerbehandlung;
    
    function Fehlerbehandlung (Nachricht, Datei, Zeile) {
     Fehler = "Fehlermeldung:\n" + Nachricht + "\n" + Datei + "\n" + Zeile;
     zeigeFehler();
     return true;
    }
    
    function zeigeFehler () {
     alert(Fehler);
    }
    //----------------------------------------------------
    var errorstring = "";
    var nicedonestring = "1px solid green"
    function gesamtname_func()
    {
     if(document.forms["kontakt"].gesamtname.value=="")
     {
     document.all.gesamtname.style.border= errorstring; 
     } else
     {
     document.all.gesamtname.style.border= nicedonestring; 
     }
    }
    function email_func()
    {
     if(document.forms["kontakt"].email.value=="" || document.forms["kontakt"].email.value.search('@')== -1 || document.forms["kontakt"].email.value.search('.')== -1)
     {
     document.all.email.style.border =errorstring; 
     } else
     {
     document.all.email.style.border =nicedonestring; 
     }
    }
    function betreff_func()
    {
     if(document.forms["kontakt"].betreff.value=="")
     {
     
     document.all.betreff.style.border =errorstring; 
     } else
     {
     document.all.betreff.style.border =nicedonestring; 
     }
    }
    function mitteilung_func()
    {
     if(document.forms["kontakt"].mitteilung.value=="")
     {
     document.all.mitteilung.style.border =errorstring; 
     } else
     {
     document.all.mitteilung.style.border =nicedonestring; 
     }
    }
    function captcha_func()
    {
     if(document.forms["kontakt"].captcha.value=="")
     {
     document.all.captcha.style.border =errorstring; 
     } else
     {
     document.all.captcha.style.border =nicedonestring; 
     }
    }[/SPOILER]
     
  4. Video Script

    Videos zum Themenbereich

    * gefundene Videos auf YouTube, anhand der Überschrift.