2012-03-22 35 views
3

作品:形式的onsubmit不叫有多個跨越每個包含輸入

<form class=filter onsubmit="alert('submit');"> 
    <span class=a></span> 
    <span class=b> <input type=text name=b /> </span> 
</form> 

不起作用:

<form class=filter onsubmit="alert('submit');"> 
    <span class=a></span> 
    <span class=b> <input type=text name=b /> </span> 
    <span class=c> <input type=text name=c /> </span> 
</form> 

通過工作,我的意思是,當我輸入文字並回車,表單onsubmit被稱爲(一個簡單的警報)。爲什麼它在第二種情況下不起作用?解決問題或解決問題的最佳方法是什麼?我可以在html中的每個輸入上放置一個單獨的onchange事件,或者通過javascript/JQuery添加事件。這是最好的方法嗎?


我有一個「表」,從內置的div行和跨越條目。該表格是表格中的一行。包裹跨度內的輸入使得格式(主要是列寬/間距)更加均勻。然後將實際輸入元素設置爲跨度寬度的80%。

+0

我嘗試添加周圍的形式內的跨度一個div(從http://stackoverflow.com/questions/3572104/what-to-replace-span-in- form-with-in-in-xhtml-1-1-the-tag-form-can-conta)沒有成功。 – jmilloy 2012-03-22 16:53:43

+0

問題在於_multiple輸入沒有submit_。不要認爲它與'span'有關。保持開放的態度:D。 – paislee 2012-03-22 17:00:02

回答

3
  1. 你真的應該換在""是你的屬性值。
  2. 根據瀏覽器的不同,如果表單只有一個文本字段,或者只有當存在提交按鈕時,Enter鍵纔會導致表單提交。爲了解決這個問題,你可以嘗試上面隱藏的input type="submit",或者使用jQuery的keypresssubmit的組合來檢測enter按鍵並以編程方式提交表單。

+0

謝謝,我以爲我已經測試過沒有跨度,但你說得對,這不是導致onsubmit不會在輸入時觸發,而是有多個輸入的跨度。 – jmilloy 2012-03-22 16:59:47

+0

當我隱藏提交按鈕時,它不再觸發onsubmit。我只會用一些js,謝謝。 – jmilloy 2012-03-22 17:06:24

+0

哦,以及如何將值包含在引號中?如果它有什麼區別...該網站是html5,我有6個用戶使用現代瀏覽器(或任何我告訴他們使用)。 – jmilloy 2012-03-22 17:09:06

2

您的輸入按鈕在哪裏提交?

我只是想這jsfiddle and it worked

<form class=filter onsubmit="alert('submit');"> 
    <span class=a></span> 
    <span class=b> <input type=text name=b /> </span> 
    <span class=c> <input type=text name=c /> </span> 
    <input type='submit' /> 
</form>​ 
+0

好的。我不想提交按鈕,我想在輸入任何字段後提交表單。 – jmilloy 2012-03-22 16:58:41