如果输入仅包含onclick事件的大写和小写字母,数字和短划线,如何检查此表单?
<form id="domaincheck" class="form-inline ltr" method="post">
<input type="text" class="form-control center input-md" name="sld" id="sld" placeholder="pleade enter domain name" required>
<select class="form-control ltr input-md input-group-addon" id="tld" name="tld" multiple="multiple">
<option value="com" selected="">.com</option>
<option value="net">.net</option>
<option value="org">.org</option>
</select>
<button type="button" class="btn btn-info" onclick="get_whois()">check!</button>
</form>
<script>
function get_whois(){
var sld = $('#sld').val();
if (sld.length == 0) {
alert('plase enter domain name!');
return false;
}
if (sld.length <= 3) {
alert('at least 4 chars');
return false;
} else {
//do something
}
}
<script>
答案 0 :(得分:2)
使用regular expressions可能是最好的方式。
使用带有正则表达式/[0-9_a-zA-Z]+$/g
的javascript test
来测试带有正则表达式的字符串。
这是一个学习和测试your regex
的好地方<强> JS 强>
function validate(val) {
var re = /^[0-9_a-zA-Z]+$/g;
return re.test(val); //validates regex on val and return true if passed.
}
function get_whois(){
var sld = $('#sld').val();
if (sld.length == 0) {
alert('plase enter domain name!');
return false;
}
if (sld.length <= 3) {
alert('at least 4 chars');
return false;
} else if(!validate(sld)){ // call validate function defined above here
alert('Allowed A-Za-z0-9_ only.');
return false;
}else{
//do something
}
}
答案 1 :(得分:0)
最近我使用jQuery验证器,我写了一个简单的密码检查器。
这是我的功能:
function(value) {
return /^[A-Za-z0-9\d=!\-@._*]*$/.test(value) // allowed characters
&& /[a-z]/.test(value) // contains lowercase
&& /[A-Z]/.test(value) // contains UPPERCASE
&& /[0-9]/.test(value) // contains Number
}
该函数返回Boolean