button vs input type =“submit”vs onclick =“document.formname.submit()”

时间:2009-11-25 09:37:14

标签: javascript html button

目前只是尝试实施这些按钮:http://web.archive.org/web/20110721191046/http://particletree.com/features/rediscovering-the-button-element/

无法决定去哪,因为这里我们主要使用IE6。据我所知......

按钮:

  • 让您像往常一样提交表单(即点击输入表单),让您禁用它,符合标准,不依赖于javascript
  • 否:在没有使用Suckerfish的情况下将鼠标悬停在IE6中,但是您无法对其进行相应的样式设置,并且仅限于一种背景颜色&在IE6中有一个可怕的黑色边框

输入类型=“提交”:

  • 另外,让我们像往常一样提交表格
  • 无法包含图片,因此您将拥有我需要的大量类文件,并且再次没有:在没有Suckerfish的情况下悬停在IE6中

a onclick =“document.formname.submit()”

  • 在IE6中轻松打造没有任何黑客的风格
  • 不太容易使用,没有黑客!即你不能用回车键提交按钮

...所以我只是想知道,三者中哪一个通常是首选的?理想情况下,我想我希望功能超过样式,但这是一个要求在这里启用Javascript(它只适用于内部网页),我想通常人们不介意在后台发生了什么? HMM。

3 个答案:

答案 0 :(得分:11)

为样式转到 onclick =“document.formname.submit()”路由并添加隐藏按钮以实现功能。

答案 1 :(得分:5)

我推荐提交按钮,因为这正是它的用途。如果您有任何已禁用的用户,则提交按钮将是他们最有意义的按钮。

如果你真的不喜欢IE6中按钮周围的边框,那么你总是可以用JavaScript隐藏提交按钮,然后创建你想要的样式的自己的按钮,只要点击你自制的按钮,然后你调用提交按钮的onclick事件处理程序(将提交表单)。这仍然允许用户点击回车键以提交数据,并为已禁用JavaScript的人保留提交密钥。

答案 2 :(得分:3)

如果您将<a>onclick一起使用,请不要忘记设置role="button"wairole="button",并设置onkeypress处理程序以使“{1}} em>按钮“可访问!