要将输入字段限制为仅字母数字,请在我的网站上使用以下内容:
<input
type="text"
name="url_code"
pattern="[a-zA-Z0-9_-]{4,10}"
class="widefat-main"
title="4 to 10 alphanumerical characters only"
/>
但是对于不支持HTML5的浏览器,获得相同限制的最佳方法是什么?
然后,您将需要使用JavaScript来检查输入。在您的<form>
标记中,该onsubmit
属性需要调用一个将返回boolean
值的函数。True表示表单将通过,false表示将不通过。
使用文档选择器获取input
元素,然后检查其value
属性。确保长度正确。然后将其与正则表达式匹配。(在此处了解它们:正则表达式)如果一切正常,请返回true。否则返回false,或者在控制台中打印出什么错误或将其写入<div>
。如果您希望像使用HTML5方式那样弹出窗口,则必须做一些其他事情。
请注意,return validate();
如果您不将其包括在内,onsubmit=
那么它将不起作用,那么您必须具有return。
<!DOCTYPE html>
<html>
<head>
<title>Validate</title>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width">
<style>
.widefat-main{
}
</style>
<script>
function validate() {
var errorDiv = document.getElementById("errorDiv"),
regex = /^[a-z0-9]+$/,
str = document.getElementById("inputString").value;
if ((str.length > 4) && (str.length < 10) && regex.test(str)) {
errorDiv.innerHTML = "Fine string";
return true;
}
else {
errorDiv.innerHTML = "4 to 10 alphanumerical characters only";
return false;
}
}
</script>
</head>
<body>
<form action="" onsubmit="return validate();">
<input
id="inputString"
type="text"
name="url_code"
class="widefat-main"
title="4 to 10 alphanumerical characters only"
/>
<input type="submit" value="Submit"/>
</form>
<div id="errorDiv"></div>
</body>
</html>
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句