2013-03-12 31 views
1

即使我按Cancel按鈕,以下jQuery代碼執行ajaxForm函數。另外,success部分也不更新content。有人可以告訴我它有什麼問題嗎?謝謝。jQuery確認,然後發佈與ajaxForm

$(document).ready(function() { 
    $(".myForm").click(function (e) { 
    if (confirm("Are you sure?")) { 
     $(".myForm").ajaxForm ({ 
     success: function(returnData) { 
      $('#content').html(returnData); 
     } 
     }); 
    } 
    }); 
}); 

回答

2

click事件應的按鈕元素上進行設置,並且你應該使用.ajaxSubmit(),而不是.ajaxForm()

該按鈕不應該是提交按鈕(即,<input type="submit"><button type="submit">),否則您需要致電e.preventDefault()

嘗試這樣:

HTML:

<form id="myForm"> 
    <input type="text" /> 
    <button type="submit" id="submitButton">Submit</button> 
<form> 

的JavaScript:

$('#submitButton').click(function(e) { 
    e.preventDefault(); 
    if (confirm('Are you sure?')) { 
     $("#myForm").ajaxSubmit({ 
      success: function(returnData) { 
       $('#content').html(returnData); 
      } 
     }); 
    } 
}); 
+0

工程。非常感謝。但是,如果表單包含用於上傳的文件和圖像,「ajaxSubmit」是否會起作用? – 2013-03-12 23:21:15

+0

好吧,有一個問題。即使某些字段留空,表單也不會檢查「必填」輸入字段並提交。有什麼建議麼? – 2013-03-13 00:06:38

+0

jQuery Form Plugin的[FAQ Page](http://www.malsup.com/jquery/form/#faq)表示它支持文件上傳。 – 2013-03-13 01:29:43