2014-05-06 68 views
-3

這是一個帶有簡單JavaScript代碼的簡單表單,但我不知道問題出在哪裏。
我已使用preventdDefault()停止表單提交,但似乎忽略該命令並跳轉到操作頁面。 以下是JavaScript代碼。這有什麼問題?我不知道,我花了5個小時。爲什麼e.preventDefault()不起作用

$(document).ready(function(){ 
    $('#submit').click(function(e){ 
     e.preventDefault(); 
    }); 
}); 

這裏是有史以來最簡單的形式的鏈接,但工作似乎就像是去火星....

http://jsfiddle.net/FqnFd/

+1

Working http://jsfiddle.net/satpalsingh/ea3qc/,你忘了在你的代碼中包含jquery。你應該處理表單提交事件,而不是按鈕點擊事件 – Satpal

+0

這是因爲你沒有在你的代碼中包含jquery,請嘗試http://jsfiddle.net/FqnFd/1/ –

+0

我已經在我的網站做過...我沒有放在jsfiddle ... – user2365753

回答

1

你撥弄不使用jQuery的庫。選擇jQuery版本,再次運行它。它現在應該工作。

+0

這個答案太短了,你應該已經提出了意見 – Hawk

+0

這是一個更好的評論,因爲它不是小提琴的真正問題。 –

+1

這將是一個適當的評論。我知道你現在還不能評論,但這並不能解決問題。 – Jon

-2

這是因爲表單在jQuery被觸發前才被提交。

因此,不要在事件上點擊它,而是點擊',將觸發器放在'提交'上。類似於

jQuery (document).ready (function() { 
    jQuery ("form").submit (
     function (e) { 
      e.preventDefault () ; 
     }) ; 
    }) ; 

這會停止提交頁面上的所有表單。你可以用'#formname'替換'form'以獲得特定的表單

+0

否。提交按鈕上的點擊事件在表單上的提交事件之前觸發。 – Quentin

+0

是否通過放置JavaScript警告框來測試它? – user2583714

+1

@Quentin,同意'提交按鈕在表單提交事件之前觸發',但我認爲最好處理表單提交事件。如果我錯了,請糾正我。 – Satpal