检查文本框值是否根据前缀

时间:2013-09-20 11:01:24

标签: javascript php textbox

我有文字框。 用户可以输入学生ID。 学生ID的格式为DIP0001。 前三个字母应为DIP,其余4个数字应为数字,最多只能包含4个字符。 那么如何使用javascript检查输入的数据是否采用这种格式。 请帮忙.....

3 个答案:

答案 0 :(得分:3)

您可以构建正则表达式模式并针对该值进行测试,以查看它是否与该确切模式匹配。 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>

JS文件:

// This pattern looks something like this: DIP0000
var pattern = /DIP+\d{1,3}/g;

// studentId is the ID of the input field that contains the Student ID
var studentIdInput = document.getElementById('studentId');

// Check the pattern against the provided Student ID
if(pattern.test(studentIdInput.value)) {
    alert('It matches the pattern!');
}

编辑1:我在以下JSFiddle中构建了功能:http://jsfiddle.net/vldzamfirescu/QBNrW/
希望它有所帮助!

EDIT2:我更新了JSFiddle以匹配最多4位数的任何其他组合;检查一下:http://jsfiddle.net/vldzamfirescu/QBNrW/1/如果它解决了你的问题,请告诉我!

答案 1 :(得分:3)

试试这段代码

<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>

答案 2 :(得分:1)

使用正则表达式。如果找到有效的学生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');
    }
});