2012-06-07 127 views
0

想象這片的html:如何檢查提交按鈕是否被點擊而不是輸入按鈕?

​<form> 
    <input type="text"> 
    <input type="submit" id="a"> 
</form>​​​​​​ 

和這段JavaScript

document.getElementById('a').onclick = function (e) { 
    alert(e.type); 
};​​​​ 

的警報總是會說「點擊」,即使你按在文本框輸入。

如何檢查按鈕是否真的被點擊?

+1

只是好奇:它有什麼不同? –

+0

[jQuery點擊事件 - 如何判斷鼠標是否被點擊或輸入鍵被按下了?]的可能重複?(http://stackoverflow.com/questions/7394796/jquery-click-event-how-to-tell-if-鼠標是 - 點擊 - 或進入琴鍵被按下) –

+0

也許這將幫助:使用Javascript:輸入按鍵事件] [1] [1]:http://stackoverflow.com/questions/905222/javascriptenter-key-press-event – blackwolf

回答

1

想象這片的html:

<form> 
    <input type="text"> 
    <input type="button" id="a"> 
</form> 

和這段JavaScript

document.getElementById('a').onclick = function (e) { 
    this.form.submit(); 
};​​​​ 

的任何混亂將成爲可能。

在現代Web應用程序中幾乎沒有理由使用input type="submit"

+0

這不是語義上的正確,按鈕不是你sed提交表單 –

+0

HTML,CSS,javascript中的大部分內容都沒有意義,如果僅將它們看作語義元素,也不允許構建複雜的Web應用程序。務實,保持簡單。不要忘記,在Ajax時代,表單很少被髮送到服務器的被動對象。如果密鑰是一個輸入,那麼檢查onClick會是什麼錯誤... –

+0

@dystroy [Unobtrusive Javascript](http://en.wikipedia.org/wiki/Unobtrusive_JavaScript)每個禁用JavaScript的人都不會能夠使用表格/網站。 – Andreas

相關問題