首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >立即检查jquery中的空字段

立即检查jquery中的空字段
EN

Stack Overflow用户
提问于 2019-10-28 21:45:20
回答 2查看 56关注 0票数 1

我必须检查表单中的字段是否为空,并在每个空字段前面显示错误消息,但我不知道如何使用jQuery检查表单的字段并显示错误消息they if。我尝试使用keyup,但它不能立即完成。你知道在jQuery中怎么做吗?

代码语言:javascript
复制
$(function() {
  $("#myButton").click(function() {
    valid = true;
    if ($("#name").val() == "") {
      $("#name").next(".error-message").fadeIn().text("Please enter your name")
      valid = false;
    } else if (!$("#name").val().match(/^[a-z]+$/i)) {
      $("#name").next(".error-message").fadeIn().text("Please enter a valid name")
      valid = false;
    } else {
      $("#name").next(".error-message").fadeOut();
    }
    if ($("#firstName").val() == "") {
      $("#firstName").next(".error-message").fadeIn().text("Please enter your first name")
      valid = false;
    } else if (!$("#firstName").val().match(/^[a-z]+$/i)) {
      $("#firstName").next(".error-message").fadeIn().text("Please enter a valid first name")
      valid = false;
    } else {
      $("#firstName").next(".error-message").fadeOut();
    }
    if ($("#phone").val() == "") {
      $("#phone").next(".error-message").fadeIn().text("Please enter your phone")
      valid = false;
    } else if (!$("#phone").val().match(/^[0-9]+$/i)) {
      $("#phone").next(".error-message").fadeIn().text("Please enter a valid phone")
      valid = false;
    } else {
      $("#phone").next(".error-message").fadeOut();
    }
    return valid;
  });
});
代码语言:javascript
复制
.error-message {
  display: none;
  color: red;
}
代码语言:javascript
复制
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<form method="post" id="myForm">
  <fieldset>
    <legend>Contact us</legend>
    <label>Your name:</label>
    <input type="text" name="name" id="name">
    <span class="error-message">error</span>
    <br />
    <label>Your First name:</label>
    <input type="text" name="firstName" id="firstName">
    <span class="error-message">error</span>
    <br />
    <label>Your phone:</label>
    <input type="text" name="phone" id="phone">
    <span class="error-message">error</span>
    <br />
    <input type="submit" value="Submit" id="myButton">
  </fieldset>
</form>

EN

回答 2

Stack Overflow用户

发布于 2019-10-28 22:06:09

检查我的输入例如,你可以使用onkeyup (当删除内容时)我的函数检查密码有多强以及它是否为空

代码语言:javascript
复制
function checkPasswd(el, but) {
  let password = $(el).val();
  const strongRegex = new RegExp("^(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9])(?=.*[!@#\$%\^&\*])(?=.{8,})");

  if (strongRegex.test(password)) {
    $(el).css({
      'background-color': '#58bc62'
    });
    $(but).attr("disabled", false);
  } else {
    if (password == "") {
      $(el).css({
        'background-color': 'white'
      });
      $(but).attr("disabled", true);
    } else {
      $(el).css({
        'background-color': '#e57777'
      });
      $(but).attr("disabled", true);
    }
  }
}
代码语言:javascript
复制
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<input type="password" name="password" id="password" placeholder="new password..." onkeyup="checkPasswd('#password', '.saveToDbButton')" class="add_user" required>

票数 1
EN

Stack Overflow用户

发布于 2019-10-29 17:38:14

我成功了

代码语言:javascript
复制
        $("#name").focusout(function () {
        if (!$(this).val()) {
            $("#name").next(".error-message").fadeIn().text("Please enter your name");
            name = false;
        }
        else if(!$("#name").val().match(/^[a-z]+$/i)){
                $("#name").next(".error-message").fadeIn().text("Please enter a valid name");
                name = false;
        }
        else{
            $("#name").next(".error-message").fadeOut();
        }
    });

    $("#firstName").focusout(function () {
        if (!$(this).val()) {
            $("#firstName").next(".error-message").fadeIn().text("Please enter your first name");
            firstName = false;
        }
        else if(!$("#firstName").val().match(/^[a-z]+$/i)){
            $("#firstName").next(".error-message").fadeIn().text("Please enter a valid first name");
            firstName = false;
        }
        else{
            $("#firstName").next(".error-message").fadeOut();
        }

    });

    $("#phone").focusout(function () {
        if (!$(this).val()) {
            $("#phone").next(".error-message").fadeIn().text("Please enter your phone");
            phone = false;
        }
       else if(!$("#phone").val().match(/^[0-9]{10}$/i)){
        $("#phone").next(".error-message").fadeIn().text("Please enter your phone");
        phone = false;
       }
       else{
        $("#phone").next(".error-message").fadeOut();
       }

    });
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58592073

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档