2012-04-12 11 views
-2

Hallo Ich bin mit Javascript Feld i bin Überprüfung Sonderzeichennicht Sonderzeichen „_“ in Javascript Validierung

zu validieren .. der Code i validates alle Sonderzeichen außer _ Unterstreichungs bin der Umsetzung ..

<script type="text/javascript" language="javascript"> 
function validateForm() 
{ 
    var iChars = "[email protected]#$%^&*()+=-[]\\\';,./{}|\":<>?_"; 

    for (var i = 0; i < document.reg_form.txtusername.value.length; i++) 
     { 
      if (iChars.indexOf(document.reg_form.txtusername.value.charAt(i)) != -1) 
       { 
        alert ("Special Characters are not allowed."); 
        return false; 
         } 
     } 
    return true; 
} 
</script> 

hierfür eingereicht

<input name="txtusername" type="text" id="txtusername" maxlength="10" style="background-color:#CCC" /> 

aber es ist nicht die Validierung der Strich

+4

Verstehen Sie den Code überhaupt ...? –

+0

ja ich tue .. und ich habe versucht, Unterstreichung in iChars .. aber es ist nicht die Unterstreichung – maham

Antwort

0

Zeichen in Strings angesprochen werden, als ob die Zeichenkette ein Array waren (was, wenn man darüber nachdenkt, ist es). Da Sie die Zeichenkette char-per-char erneut durchstreichen, wie bei einem Array, warum sollten Sie in Ihrer Logik nicht konsistent sein?

if (iChars.indexOf(document.reg_form.firstname.value[i]) !== -1) 
{ 
    alert('Foobar'); 
    return false; 
} 

Das sollte ... Auch arbeiten: Es gibt keine wirkliche Notwendigkeit, die Apostroph zu entkommen, da die Ichar Zeichenfolge durch doppelte Anführungszeichen begrenzt ist ... wenn alles andere fehlschlägt, versuchen Sie möchten vielleicht, dass Backslash Weglassen , auch. Obwohl ich nicht glaube, dass das, was das Problem

Es arbeitet verursacht: here

+0

ich implementiere einfach dein und dasselbe Problem ist hier, dass es immer noch nicht validiert Unterstrich :( – maham

+0

Link zu jsfiddle hinzugefügt, es funktioniert gut –

+0

ja es funktioniert jetzt .. thnxx alott @Elias Van Ootegem :) – maham

2

Wäre es nicht sinnvoll, es einfach in Ihre iChars-Variable zu schieben, was ganz offensichtlich Ihre "Blacklist" ist?

var iChars = "[email protected]#$%^&*()+=-[]\\\';,./{}|\":<>?_"; 
+0

ich versuchte auf diese Weise .. aber es ist nicht validieren @ karim79 – maham

+0

@maham Es muss funktionieren. Haben Sie die Datei gespeichert, hochgeladen und sichergestellt, dass die neueste Version Ihrer Seite geschaltet wird? –

+0

Ich habe den Code aktualisiert .. PLZ überprüfen, warum es nicht Unterstrich validiert – maham

1
var iChars = "[email protected]#$%^&*()+=-[]\\\';,./{}|\":<>?_"; 

     for (var i = 0; i < document.reg_form.firstname.value.length; i++) 
     { 
      if (iChars.indexOf(document.reg_form.firstname.value.charAt(i)) != -1) 
       { 
        alert ("Special Characters are not allowed"); 
        return false; 
       } 
     } 
+0

Ich setze Unterstreichung am Ende, aber es ist nicht gültig :(@blasteralfred – maham

+0

sollte dies funktionieren .. können Sie uns den vollständigen Code ?? –

+0

Ich habe Code bearbeitet .. PLZ den Code überprüfen – maham

Verwandte Themen