2013-03-18 22 views
0

我做了一個聯繫表單,現在我想在發送消息之前驗證它。如果所有字段都是空的,驗證將起作用,即表單不提交任何內容,這很好。

1號方案:但是,當所有的領域都除了電子郵件電話領域只有,它使用正則表達式正確的信息,並提交表單,它還是到$.ajax()。而且我很確定,在我的代碼中,如果信息與RegEx不匹配,那麼return false,所以它甚至不應該繼續到$.ajax()。但它仍然......奇怪!

第二種情況:另外,當它進入$.ajax()時,它失敗,返回錯誤。

第三場景:或當所有字段從頁面加載,並提交表單的第一時間充滿了正確的信息,有這麼說{"error": "Please use POST request"}或我得到Error 405一個錯誤。但我在$.ajax()中使用POST ...'POST'有什麼問題?

請點擊這裏查看我的代碼(我已經包含和註釋的PHP電子郵件的代碼,在HTML的頂部,以防萬一在某些服務器你想測試):

http://jsfiddle.net/qvSaW/3/

我知道大約有插件,但我不允許使用任何插件...

非常感謝

+0

我無法重新創建第一個場景。它的作品是正確的。 p.s.你可以在jsfiddle中添加一個服務器響應。請參閱左側面板中的「Ajax請求」。 – Jashwant 2013-03-18 07:31:24

+0

謝謝@Jashwant,但你必須正確填寫所有的字段,除了電子郵件和電話字段(例如,不要輸入電子郵件和電話號碼...) – Shaoz 2013-03-18 07:47:43

+0

我認爲你必須提供絕對的URL來獲得小提琴工作網址:'script/sendmail.php', – MarmiK 2013-03-18 09:09:43

回答

0

看看這個plugin它涵蓋驗證的特殊規則,消息終於可以submi如果它通過所有。

+0

謝謝@Andres,但不允許插件。 – Shaoz 2013-03-18 07:31:04