您的位置:首页 > 其它

button在Firefox下点击提交表单(form)的问题

2011-12-13 17:41 387 查看
【关键词】Button Form FireFox

【问题描述】

使用Firefox3.0+打开页面,点击了一个<button onclick="doWork()"></button>去执行doWork方法,但是doWork没有执行,表单却提交了。另外IE6、7没有此问题。

【分析原因】

由于根据w3c标准<button>默认的type为submit,也就是说如果button没有声明type的话,那此button就是相当于一个submit,所以如果此button是在一个表单里的话,点击它就会提交表单。然而IE6、7没有严格按照此标准

实现,因此不会出现此问题。

【解决办法】

有两种解决方法

方法1:

在<button>中加入onclick="return false",这样禁止点击时提交表单

方法2:

在<button>中加入type="button",声明为button,这样表单也不会提交了

【避免此类问题的建议】

为了解决跨浏览器的问题,最好是使用<button type="button" >显式声明为一个button

*根据网友们的回复,加上<input type="button" />为建议解决方式
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: