停止提交后没有检查提交

时间:2016-11-01 21:03:02

标签: jquery

我正在尝试检查某个电子邮件字段是否包含该电子邮件的特定域,以便只有该公司的用户才能登录我们为他们制作的商店。我正在检查输入的值并在字符串中搜索域的值。该部分有效,我阻止默认操作并且不提交表单,但是当找到该值时,我想提交,但它仍然阻止它提交。可能只是经过漫长的一天解决这样的问题或我的代码中的愚蠢...请告知:

<script>
  $("#Email")
    .keyup(function() {
      var value = $(this).val();
      var n = value.search("@atlanticbay.com");
      if (n <= 0) {
        $(".btn").click(function(event) {
          event.preventDefault();
          console.log("prevented");
        });

      } else {
        $(".btn").submit(function() {
          console.log("we are good");

        })

        console.log(n);
      }
    })
    .keyup();

</script>

1 个答案:

答案 0 :(得分:0)

  1. 提交后搜索val()。
  2. 首先防止默认,因为您可以阻止浏览器执行操作,无论是否进行客户端验证
  3. 使用模式而不是搜索,您的验证将失败,例如&#34; @ atlanticbay.com @ yahoo.com&#34;
  4. 由于您已经处于提交状态,因此您可以使用ajax将值推送到服务器,因为您已阻止默认的浏览器行为。
  5. 最后,您的代码将如下所示
  6. &#13;
    &#13;
    valueForKey:
    &#13;
    &#13;
    &#13;