2009-09-11 54 views
2

我正在用兩個模擬搜索表單調試一個奇怪的問題 - 當用戶在文本框中鍵入一些搜索條件並點擊回車時,一個表單返回結果,另一個表單返回結果。它只發生在IE瀏覽器 - FF按照預期處理這兩種形式。我懷疑在一種情況下按下Enter鍵會觸發onclick中的某個搜索按鈕,而另一個則會觸發onclick中的某個搜索按鈕。HTML - 引起提交的表單元素

如何找到表單元素引起的提交事件?

感謝, 安德烈

+0

你有你正在使用的代碼的例子嗎? – slashnick 2009-09-11 18:16:49

回答

1

聽起來像single textbox form bug in IE

爲了解決它,你可以使用Javascript來處理輸入按鍵,或者只是插入一個空白的隱藏文本框。拉默,我知道。

+0

非常感謝!您發佈的鏈接描述了確切的問題 - 一個表單只有一個文本框,另一個(有效)有兩個。我將在星期一嘗試,但我覺得它會起作用。好工作,謝謝一堆! – Andrey 2009-09-12 05:18:42

0

你可以撒上的onclick事件的表單元素設置一個隱藏的表單變量,每個元素的不同的值,然後聞其結果要麼使用DOM檢查器或類似提琴手。

There 可能是一種簡單的方式來簡單地有一種形式onsubmit()事件,你可以從事件對象中提取觸發元素,但我不得不深入文檔,看看這是否可能.. if我得到機會我會做一些看。

+0

不能直接判斷onsubmit中按下了哪個按鈕(直到它的名稱/值對碰到服務器)。有檢測按鈕點擊和進入印刷機有不愉快的解決方法,但它沒有多少樂趣。 – bobince 2009-09-11 21:39:34

1

我懷疑在一種情況下按下enter鍵會觸發onclick中的一個搜索按鈕,而另一個則會觸發onclick。

是的。瀏覽器可能在很大程度上以他們的興趣爲單位,將輸入視爲單擊提交按鈕,僅提交表單或不提供任何內容。將一般表單提交內容放在form.onsubmit中,而不是在第一個提交按鈕上單擊。

0

我想我可以幫助你很多如果你提供你的兩個表格代碼。然而,檢查以下提交按鈕代碼:

<input type="submit" value="Submit"> 

當你使用它,那麼當你按下相應的表單中輸入的形式將被提交。如果你想在提交之前檢查一些東西,你可以使用JavaScript函數,如下所示:

<input type="button" onclick="javascript_function_name();" value="Submit"> 

謝謝。如果這不能幫助你,請更簡短地表達情況。

+0

有一個圖像按鈕,提交的形式: 不幸的是,我不能提供的形式,他們都是巨大的,像每個500K – Andrey 2009-09-12 05:15:04