2010-03-04 50 views
2

這是我剛纔的問題後續:JSP/servlet的組合不提交表單上輸入如果只有表單元素是一個提交按鈕

JSP/servlet/IE combination doesn’t submit form detail on Enter

形式裏面,我們有:

<input ... type="submit" name="confirm" value="Confirm"/> 

此表格中沒有輸入字段。此表單出現在工作流程的結尾,基本上是一個驗證過程。

按下Enter鍵後,此表單不會提交給IE或Firefox。如果按下「確認」按鈕,它會很好地工作。

繼在回答我剛纔的問題,我已經嘗試添加虛擬領域,如:

<input type="hidden" /> 

<input type="text" style="display: none;" /> 

,但他們沒有什麼區別。

由於各種原因,我們不希望使用Javascript。

任何建議讓輸入鍵提交?

回答

2

不幸的是,您應該至少在表單中有一個可調焦的輸入元素才能使其工作,然後才能在輸入焦點時輸入。如果你沒有任何輸入元素,那麼沒有其他的方法可以解決這個問題,比讓Javascript聽取輸入關鍵。

<body onkeypress="if (event.keyCode == 13) document.formname.confirm.click();"> 

formname是父<form>元件的name屬性的值。

請注意,我用document.formname.confirm.click()而不是document.formname.submit(),因爲否則IE不會將按鈕的名稱=值對發送到服務器端。

唯一的Javascript的免費的方式是讓用戶標籤到按鈕,然後按進入。這一切都是順便說一句,無論使用的瀏覽器是什麼,因此不是IE特定的。