我已经完成了很多服务器端表单验证,但到目前为止,我所做的唯一客户端表单验证是检查空/空条目(例如,if(value ==''|| value == null) ))。我现在正在检查用户输入的粗俗并且已经使用javascript成功检查这些(包含在一个变量 - vulgarcheck中),如下所示:
<script language="javascript" type="text/javascript">
function CheckUserForm() {
var usersuggestion=document.forms['UserForm']['userinput'].value;
var vulgarcheck = /badword1|badword2|badword3|etc/gi;
var vulgarcompare = usersuggestion.match(vulgarcheck);
if (usersuggestion==''||usersuggestion==null) {
alert('To make a suggestion, please enter text into the textbox');
return false;
}
else if (vulgarcompare!=null) {
alert('The text you entered contains some vulgar language. Please try again!');
return false;
}
else {
return true;
}
}
</script>
由于我不熟悉javascript表单验证比检查null / blank-entry更复杂,我希望有人可以告诉我,如果我的方法有任何我不知道的疏忽。也就是说,这种方法是否存在潜在的问题?谢谢你的帮助!
答案 0 :(得分:1)
我认为在不久的将来,当你想要添加越来越多的单词时,用粗俗的单词维护你的词典会很难。
我的建议是建立一个字典并使用字典查找。 John Resig写了两篇关于这件事的好文章:http://ejohn.org/blog/javascript-trie-performance-analysis/和 http://ejohn.org/blog/dictionary-lookups-in-javascript/
答案 1 :(得分:0)
您可以使用下面的代码检查验证是否为空,不是空白,未定义,而不是javascript和jquery中的零。
function myFunction() {
var data; //The Values can be like as null,blank,undefined,zero you can test
if(!(!(data)))
{
alert("data "+data);
}
else
{
alert("data is "+data);
}
}