使用<button type =“submit”>替换<input type =“submit”/>提交表单,问题?</button>

时间:2012-11-22 20:48:02

标签: html forms

<button>标签比输入更容易设置样式,我真的赞成使用它们。但是我担心可能会出现一些问题。

来自W3schools:Note: If you use the <button> element in an HTML form, different browsers may submit different values. Use <input> to create buttons in an HTML form.

我还读到IE浏览器有这个按钮的问题。我只是想用它们来代替提交按钮,例如:

<form>
<input type="text" name="post"/>
<button type="submit">
</form>

它们的工作方式与提交按钮相同,还是会出现不支持的浏览器或其他任何问题?

3 个答案:

答案 0 :(得分:2)

button元素在IE上遇到了严重的问题,以前的IE实现非常糟糕。这仍然是一个问题。根据{{​​3}},IE 7在这方面仍然非常破碎,在提交时发送了错误的数据。

但是,如果您的表单处理不依赖于button元素产生的name = value数据,那么button type=submit这些天是安全的。例如,当表单中只有一个这样的按钮时,你可能不会使用name = value对。

答案 1 :(得分:1)

我没有遇到<button type="submit">的任何IE问题,更糟糕的是,您可以随时附加一个onclick事件处理程序。

<button>应该可以安全使用。

最后一点:w3schools是一个错误且误导性的网站。您不应将其用作任何语言的参考。对于PHP,有PHP Manual,对于JavaScript,有Mozilla Developer Network (or MDN)。请参阅http://w3fools.com以进一步了解您为什么不应该使用w3schools。

答案 2 :(得分:-1)

如果您使用

 
  <input type="submit" name="whatever" />
 

你可以放心,它的效果和按钮一样好;你没有浏览器不兼容问题。
它同样具有风格。

希望这会有所帮助。