Javascript 复选框值根据前缀确定
我有一个文本框。 用户可以在其中输入学生Id。 学生id的格式为DIP001。 前三个字母应为DIP,其余4个数字应为数字,最多只能包含4个字符。 那么,我如何使用javascript检查输入的数据是否为这种格式呢。Javascript 复选框值根据前缀确定,javascript,php,textbox,Javascript,Php,Textbox,我有一个文本框。 用户可以在其中输入学生Id。 学生id的格式为DIP001。 前三个字母应为DIP,其余4个数字应为数字,最多只能包含4个字符。 那么,我如何使用javascript检查输入的数据是否为这种格式呢。 请帮助……使用常规表达式 如果找到有效的学生ID,模式将返回true: function validateStudentId(id) { var re = /DIP[0-9]{4}/; return re.test(id); } //编辑的用于点击事件: d
请帮助……使用常规表达式 如果找到有效的学生ID,模式将返回true:
function validateStudentId(id) {
var re = /DIP[0-9]{4}/;
return re.test(id);
}
//编辑的用于点击事件:
document.getElementById('button').addEventListener('click', function(){
if( validateStudentId(document.getElementById('textBox').value) ){
alert('correct');
}else{
alert('invalid ID');
}
});
使用常规表达式 如果找到有效的学生ID,模式将返回true:
function validateStudentId(id) {
var re = /DIP[0-9]{4}/;
return re.test(id);
}
//编辑的用于点击事件:
document.getElementById('button').addEventListener('click', function(){
if( validateStudentId(document.getElementById('textBox').value) ){
alert('correct');
}else{
alert('invalid ID');
}
});
您可以构建一个正则表达式模式,并根据该值对其进行测试,以查看它是否与该模式匹配。 HTML文件:
<!DOCTYPE html>
<html lang="en">
<head>
<title>Title</title>
</head>
<body>
<label for="studentId">Student ID</label>
<input id="studentId" type="text">
<button id="btn" type="button">Validate</button>
// Embedded script so that you don't have to load an external file
<script>
var input = document.getElementById('studentId');
var btn = document.getElementById('btn');
var pattern = /DIP+\d{1,3}/g;
btn.addEventListener('click', function(){
if(pattern.test(input.value)) {
alert('It enter code here`atches!');
}else {
alert('It does not match!');
}
});
</script>
</body>
</html>
编辑1:我已经在以下JSFIDLE中构建了功能:希望有帮助
EDIT2:我已经更新了JSFiddle,以匹配任何其他最多4位的组合;查看:如果它解决了您的问题,请告诉我 您可以构建一个正则表达式模式,并根据该值对其进行测试,以查看它是否与该模式匹配。 HTML文件:
<!DOCTYPE html>
<html lang="en">
<head>
<title>Title</title>
</head>
<body>
<label for="studentId">Student ID</label>
<input id="studentId" type="text">
<button id="btn" type="button">Validate</button>
// Embedded script so that you don't have to load an external file
<script>
var input = document.getElementById('studentId');
var btn = document.getElementById('btn');
var pattern = /DIP+\d{1,3}/g;
btn.addEventListener('click', function(){
if(pattern.test(input.value)) {
alert('It enter code here`atches!');
}else {
alert('It does not match!');
}
});
</script>
</body>
</html>
编辑1:我已经在以下JSFIDLE中构建了功能:希望有帮助 EDIT2:我已经更新了JSFiddle,以匹配任何其他最多4位的组合;查看:如果它解决了您的问题,请告诉我 试试这段代码
<html>
<head>
<script>
function validate(val) {
if (val.value != "") {
var filter = /^[DIP]|[dip]+[\d]{1,4}$/
if (filter.test(val.value)) { return (true); }
else { alert("Please enter currect Student Id"); }
val.focus();
return false;
}
}
</script>
</head>
<body>
<input id="Text1" type="text" onblur="return validate(this);" />
</body>
</html>
函数验证(val){
如果(val.value!=“”){
var filter=/^[DIP]|[DIP]+[\d]{1,4}$/
if(filter.test(val.value)){return(true);}
else{alert(“请输入当前学生Id”);}
val.focus();
返回false;
}
}
试试这段代码
<html>
<head>
<script>
function validate(val) {
if (val.value != "") {
var filter = /^[DIP]|[dip]+[\d]{1,4}$/
if (filter.test(val.value)) { return (true); }
else { alert("Please enter currect Student Id"); }
val.focus();
return false;
}
}
</script>
</head>
<body>
<input id="Text1" type="text" onblur="return validate(this);" />
</body>
</html>
函数验证(val){
如果(val.value!=“”){
var filter=/^[DIP]|[DIP]+[\d]{1,4}$/
if(filter.test(val.value)){return(true);}
else{alert(“请输入当前学生Id”);}
val.focus();
返回false;
}
}
我已经编辑了我的帖子。检查EDIT2部分和特定的JSFIDLE。我是否必须为此加载任何js文件。当我在本地尝试您的代码时,它不起作用。您需要将输入字段的ID设置为studentId,并在HTML中加载js文件。然后,您可以简单地从JSFIDLE(javascript代码)复制代码。另外,确保你的HTML文件中的按钮id为btn。我已经用HTML文件的内容更新了我的帖子。此外,我还嵌入了JavaScript代码,这样您就不必导入外部文件。检查EDIT2部分和特定的JSFIDLE。我是否必须为此加载任何js文件。当我在本地尝试您的代码时,它不起作用。您需要将输入字段的ID设置为studentId,并在HTML中加载js文件。然后,您可以简单地从JSFIDLE(javascript代码)复制代码。另外,确保你的HTML文件中的按钮id为btn。我已经用HTML文件的内容更新了我的帖子。此外,我还嵌入了JavaScript代码,这样您就不必导入外部文件。您甚至不需要调用该函数。因为您需要放置一个事件来调用“validateStudentId()”函数。请尝试使用我编辑的代码。甚至不调用该函数。因为您需要放置一个事件来调用“validateStudentId()”函数。试试我编辑的代码。