2012-03-28 76 views
0

我是Javascript和Jquery的新手。我想提交一份表格,並在提交時顯示「謝謝!」消息在表單下方。我已能夠將表格提交到我們的數據庫並顯示謝謝信息。唯一的問題是,無論字段是否填寫,謝謝消息都會顯示。我已經嘗試過jquery的.show()以顯示一個隱藏的div,其中包含感謝消息和replaceWith()方法。你能幫忙的話,我會很高興。謝謝。即使在未提交時也顯示謝謝訊息

下面是腳本:

<script type="text/javascript"> 
$(document).ready(function() { 
    $("#My-Form").submit(function(event) { 
     event.preventDefault(); 
     submitform(); 
    }) 

    $("#My-Form").validate({ 
     rules: { 
      firstname: { 
       required: true 
      }, 
      lastname: { 
       required: true 
      }, 
      phone: { 
       required: true 
      }, 
      email: { 
       required: true, 
       email: true 
      }, 
      address: { 
       required: true 
      }, 
      city: { 
       required: true 
      }, 
      state: { 
       required: true 
      }, 
      zip: { 
       required: true, 
       number: true 
      } 
     }, 
    }); 
}); 

function submitform() { 
    $.post('URL', $("#My-Form").serialize(), returnResults, 'json'); 
    $("#MyForm").replaceWith("<p><h2>Thank You!</h2></p>"); 
} 

function returnResults() { 
    //SHOW THANK YOU MESSAGE 
} 
</script> 

回答

0

只是所以我正確地得到你。我認爲,無論輸入的是正確的,你都會顯示謝謝信息。所以爲了防止這種情況,請查看valid()

的jquery.validate.js方法,您可以在returnResults()方法中執行此操作。

function returnResults() { 
    if ($("#mobile-landing").valid()) { 
     //show thank you 
    } 
} 
+0

你在哪裏都編輯基於成功的提交,可以進行這樣的檢查(我假定你的表單ID是'#移動landing') – Michael 2012-03-28 14:49:12

+0

下面是詳細信息http://docs.jquery.com/插件/驗證/有效 – Michael 2012-03-28 14:52:59

+0

嘿邁克爾,感謝您的快速響應。是的,這是問題。表單ID是#mobile-landing,即使我打算叫它#My-Form哈哈。我將檢查Jquery驗證。 – UTvolfan85 2012-03-28 15:03:25

相關問題