函数不返回false

时间:2016-10-12 14:47:29

标签: javascript jquery

我在表单提交时调用my_function。该函数在文本文件中查找用户在my_input中输入的数字。如果此号码不存在,则该功能会弹出警报并应停止表单提交。

我的问题:显示警报,但是当我关闭它时,表单会被提交。我究竟做错了什么?为什么my_function不返回false?



function my_function() {

  $.get("http://www.example.com/file.txt", function(contents) {

    var my_number = document.getElementById("my_input").value;
    var hasString = contents.includes(my_number);
    if (hasString == false) {
      alert('Number does not exist in text file!');
      return false;
    }
  });

}

function function_one() {
  var my_number = document.getElementById("my_input").value;
  var pattern = /^(0|1|2)\d{5}$/;

  if (pattern.test(my_number)) {

    $("#cauta_c").val("wait..");
    $("#cauta_c").prop("disabled", true);
    $("#cauta_c").addClass("my_class");

    return true;
  }

  alert('not valid!');
  return false;

}

<form action="https://www.example.com/cgi-bin/script.cgi" 
      name="whatever" 
      id="whatever" 
      method="post" 
      onsubmit="return function_one() && my_function()" 
      autocomplete="off" 
      spellcheck="false" 
      autocorrect="off" 
      novalidate="novalidate">
&#13;
&#13;
&#13;

0 个答案:

没有答案