2014-09-25 92 views
0

我有一個表單提交按鈕。它工作正常。但現在它已停止工作,請幫忙。jquery延遲和動畫不工作

$('#btnsubmit').click(function() { 

    $(this).delay(2000).animate({ 
      width: '90px' 
     }, 

     'slow', 

     function() { 

      alert('Im an alert message'); 
     } 
    ); 

}); 
+0

預期的行爲是什麼?因爲你的代碼有效。 – mithunsatheesh 2014-09-25 06:38:53

+0

現在不拖延頁面,直接去服務器控制器。 – 2014-09-25 06:39:58

+1

是的,它是工作,看到這個http://jsfiddle.net/kawadkarbk31/Lo49768r/ – 2014-09-25 06:40:02

回答

0

我認爲你的表格正在提交。你需要阻止提交按鈕的默認操作使用e.preventdefault()

$('#btnsubmit').click(function(e) { 

    e.preventdefault(); 
    $(this).delay(2000).animate({ 
      width: '90px' 
     }, 

     'slow', 

     function() { 

      alert('Im an alert message'); 
     } 
    ); 

}); 
+0

是的,它的工作,但現在控制器不會被服務器上的提交按鈕調用。 e.preventDefault(); – 2014-09-25 07:34:00

+0

@HimanshuTiwari - 在完成動畫之後,在警報之後放置'$('#your-form-id')。submit()'以進入控制器(提交表單)。 – mithunsatheesh 2014-09-25 07:36:49

+0

謝謝,現在有作品 – 2014-09-25 08:06:45

0

你的代碼看起來正確的,但你可以嘗試從btnSubmit按鈕調用的onclick是這樣的:

<input type="button" id="btnsubmit" onclick="buttonClicked(this);" value="click Here" > 

寫動畫in buttonClicked功能:

function buttonClicked(thisObj) 
     { 
      $(thisObj).delay(2000).animate({ 
       width: '90px' 
       }, 

      'slow', 

      function() { 

      alert('Im an alert message'); 
       } 
      ); 
     }