如何防止jQuery错误消息不止一次前置

时间:2017-11-29 22:11:59

标签: jquery

当字段验证失败时,我正在向我的标记添加错误消息。问题是前置工作不止一次,因此每次用户尝试输入错误数据时都会显示一条新的错误消息。我该如何防止这种情况发生?

这是我的代码:

$('#customer-register input[type="submit"]').on('click', function(e) {
  var day = $('#dob_day').val();
  var month = $('#dob_month').val();
  var year = $('#dob_year').val();
  var dateString = day + "/" + month + "/" + year;

  if (isValidDate(day, month, year)) {
    return true;
  }
  e.preventDefault();
  // Show an error here
  $("#customer-register form").prepend("<p>Please enter a valid date.</p>");
  $("#customer-register form p").first().addClass("errors");
});

1 个答案:

答案 0 :(得分:2)

每次调用此函数时都应删除错误消息。 所以在事件处理程序之后添加这一行$('p.errors').remove();

   $('#customer-register input[type="submit"]').on('click', function(e) {
      $('p.errors').remove();
      var day = $('#dob_day').val();
      var month = $('#dob_month').val();
      var year = $('#dob_year').val();
      var dateString = day + "/" + month + "/" + year;

      if (isValidDate(day, month, year)) {
        return true;
      }
      e.preventDefault();
      // Show an error here
      $("#customer-register form").prepend("<p>Please enter a valid date.</p>");
      $("#customer-register form p").first().addClass("errors");
    });
相关问题