2012-03-03 59 views
0

當我按下鍵盤上的輸入/返回鍵時,它會提交表單,而不會通過表單的提交按鈕中的javascript函數。當我在鍵盤上按下Enter鍵時,它會提交表單而不通過javascript?

我想按下鍵盤命令時,但我認爲這將需要時間。

那麼,有沒有簡短的方法呢?就像表單/按鈕中的事件一樣?

任何答案都會有所幫助。 謝謝。

PS:對不好的解釋抱歉。

+6

以及HTML/java腳本在哪裏? – 2012-03-03 03:00:38

回答

3

假設「你的JavaScript函數」被分配給提交按鈕的click處理程序,這很明顯爲什麼它不起作用:你沒有單擊提交按鈕。處理表單提交的代碼應該放在表單的submit處理程序中。它將從提交按鈕和回車鍵中觸發。

一個更重要的信息:您的處理程序必須返回false或致電preventDefault關於事件;如果你不這樣做,表單在你的代碼退出後仍然會提交。

+0

返回false;無效.'function submitControl(){ \t dlemployee_cert(); \t return false; }' – 2012-03-03 03:59:52

+2

然後你搞砸了別的東西,而我不是通靈。通過@MishaTs查看本頁面上最高評價的內容。另外,「不起作用」是對問題最糟糕的描述。你有沒有嘗試我的三個建議,或只是'返回false'?哪種具體方式不起作用?你有錯誤信息嗎?無論如何你仍然收到提交嗎?你有沒有嘗試在函數的頂部放置一個'alert(「test」)'來查看它是否全部輸入?編輯:哪裏調用你的函數的HTML,或JS綁定事件? – Amadan 2012-03-03 04:06:28

+0

我將函數轉換爲'onSubmit'事件。我知道我做錯了什麼,我忘了返回函數();在事件中。抱歉,添麻煩了。 – 2012-03-03 04:18:27

0

看看文檔:

你可以做這樣的事情:

HTML

<form id="form" action="process.htm"> 
    <input id="name" type="text" value="Joe" /> 
    <input type="submit" value="Say hi" /> 
</form> 

的JavaScript

$('#form').submit(function() { 
    alert('Hi there, ' + $('#name').val()); 

    // If you uncomment the below, it will submit 
    return false; // Prevent submit 
}); 

如果需要,return false將阻止它在您的JavaScript提交功能完成後提交。

活生生的例子:

希望這有助於。

0

處理函數分配給該形式 onsubmit-

<form name="forma" onsubmit="validate()" 
0

這可能是因爲你的JavaScript函數中包含一些錯誤。要查看是否存在一些JavaScript錯誤,請查看Chrome控制檯Ctrl + Shift + i

相關問題