簡體   English   中英

form.submit()方法中的setTimeout不起作用

[英]setTimeout in form.submit() method does not work

我正在表單提交中嘗試setTimeout()函數。 但是,在執行該函數之前,將提交表單,並且不會執行超時函數中的任何內容。 下面是代碼片段。

$(window).load(function () {
     $("#myform").submit(function() {
          setTimeout(function(){
               alert("me after 1000 mili seconds");
               return false;              
          }, 1000);

    });
};

請幫助我解決此問題...

$(window).load(function () {
     var submit = false;
     $("#myform").submit(function(e) {
          setTimeout(function(){
              alert("me after 1000 mili seconds");
              submit = true;
              $("#myform").submit(); // if you want            
          }, 1000);
          if(!submit)
              e.preventDefault();
     });
};

表格馬上提交。 您需要委派默認操作。 這應該為您工作:

$(window).load(function () {
     $("#myform").submit(function(e) {
          e.preventDefault();

          setTimeout(function(){
              alert("me after 1000 mili seconds");
          }, 1000);
    });
});

請參閱此jsFiddle演示

如果要在表單上禁用提交操作,可以嘗試:

$(window).load(function () {
     $("#myform").submit(function(e) {
          e.preventDefault();
          setTimeout(function(){
          alert("me after 1000 mili seconds");
          return false;

        }, 1000);

    });
});

首先,您忘了最后一行的右括號( )

$(window).load(function () {
     $("#myform").submit(function(e) {
          e.preventDefault();
          setTimeout(function(){
          alert("me after 1000 mili seconds");
          return false;

        }, 1000);

    });
});
 ^---- here you forgotten to put brace.

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM