我想使用Javascript验证用户名。我已验证媒体名称是否为空。现在我想检查除空格之外的特殊字符。
<input type="text" name="medianame" id="medianame" value="" required="required">
<a class="edit" href="" id="edit" onclick="return chk_val()">Save</a>
<script>
function chk_val() {
if (document.getElementById('medianame').value == "") {
alert("Please enter name");
return false;
}
else {
return false;
}
}
</script>
答案 0 :(得分:0)
您可以使用regular expression来测试字符串是否只包含您要允许的字符:
/^[a-z ]+$/i
...或测试不允许的字符:
/[^a-z ]/i
使用功能中的.test()
method,如下所示:
function chk_val() {
var val = document.getElementById('medianame').value;
if (val === "") {
alert("Please enter name");
return false;
} else if (/[^a-z ]/i.test(val)) {
alert("Please enter only letters or spaces");
return false;
}
return true;
}
答案 1 :(得分:0)
function chk_val()
{
var error = false;
var name = document.getElementById('medianame').value;
if (name == "")
error = true;
else if( /^[A-z ]+$/.test(name) == false)
error = true;
if(error)
{
alert("Please enter correct name");
return false;
}
return true;
}
答案 2 :(得分:0)
这将检查所有可能的表达式。您可以从中过滤您的需求。
var yourExp = /^[a-zA-Z0-9!@#\$%\^\&*\)\(+=._-]+$/g;
然后你可以匹配
var yourStr = document.getElementById('medianame').value;
if( yourStr.match(yourExp) == True ){
alert('Matched');
}