2014/4/18 ① button与submit的区别 ②现象 : 数据库中其他值可以取到 有的却取不到 解决 看获取时“#”有无

时间:2023-03-09 02:54:51
2014/4/18 ① button与submit的区别  ②现象 : 数据库中其他值可以取到  有的却取不到    解决  看获取时“#”有无

①<input type="button" /> 这就是一个按钮。如果你不写javascript 的话,按下去什么也不会
发生。

<input type="submit" /> 这样的按钮用户点击之后会自动提交 form,除非你写了javascript 阻

止它。

<button> 这个按钮放在 form 中也会点击自动提交,比前两个的优点是按钮的内容不光可以有文

字,还可以有图片等多媒体内容。(当然,前两个用图片背景也可以做到)。它的缺点是不同的浏

览器得到的 value 值不同;可能还有其他的浏览器兼容问题。
其他标签,例如 a, img,

span, div,然后用图片把它伪装成一个按钮。

②其实<input type="submit" />不是一个画面元素,而是一个表单(Form)元素,和文本输入是

一样的,都属于“数据”的一部分(特征是,有value属性,而且该属性的值,会被传送到server

端,可以拿来用),而不是样式的一部分。这种表现和数据混淆的设计,是早期web标准还比较简

陋的时代的遗产。
从画面表现上看,通过CSS可以把两者描绘得完全一样。
从画面动作上看,通过

JS可以强制两者动作也一致(都提交或者都不提交)。
但是只有表单数据这个特性,是无法混淆的

。<button>无法把自己当成Form的数据。
所以,如果只是个单纯的按钮,触发一些画面动作,请使

用<button>;反之,会把画面的数据提交给Server的,一般用<input type="submit" />,当然

<button>+JS也完全可以取代。