BUG描述:
页面是用JavaScript准备数据填写Form然后提交。然而,在IE6下通过JavaScript提交数据时页面没有反应(也没有提示)!?奇怪的是,在FireFox/Opera下面一切正常。
BUG分析:
首先:接到BUG后,先在测试机上重现了BUG,了解测试人员的操作步骤,然后在研发的机子上重现BUG。
其次:对BUG进行了跟踪。
起初认为是程序的那个地方有逻辑错误,检查代码无误。尝试用多种浏览器测试,发现在IE7/8、FireFox、Opera、360浏览器下正常,唯独IE6下不正常,
所以排除了逻辑错误这个原因;
上网搜索发现IE6下如果是用<input
type="submit"/>按钮,则能正常提交数据,若是通过JavaScript脚本:formElement.submit(),则会提交失败,网上提出了使用setTimeout()的办法来解决;
进一步深入发现, <a/>有个链接属性 href , 而form也有一个页面请求属性 action, 当两属性同时存在时, 点击<a/>当然会优先<a/>的href链接,但如果是 <a
href="javascript:;" ></a>, 又会是什么情况呢?
实践证明IE7.0+ , FF3.0+, Opera9.6+ 均能正确处理, 忽略<a/>的href,
执行表单的submit动作, 唯有 IE6 仍坚持着自己的原则, 只要有 href , 就只尝试执行链接
href , 除非你的<a/>标签中去掉 href属性, 但去掉 href 你将发现IE 下将不会出现下划线;看来是因为 ie6 执行默认动作引起来,目前两种解决方法:
第一种方法:
<a class="bt_3" style="cursor:pointer;" id="btnSubmit1" onclick="submitPage()">提交</a>
这种方法根本没有href属性,用style="cursor:pointer;"
产生手型图标来模拟。
另一种方法:
<a class="bt_3" href="javascript:void(0)" id="btnSubmit1" onclick="submitPage();return false;">提交</a>
onclick 返回 false ,阻止浏览器的默认行为。也可以达到相同的目的
分享到:
相关推荐
最近看到Q群里有人说chrome(谷歌浏览器)不支持form.submit方法,求解决办法。闲的时候亲自测试了一番,发现chrome竟然真的不支持form.submit,测试的时候用的是Jquery的,也不支持,于是乎研究了半天,终于找到了...
今天用chrome提交一个表单时,发现一个奇怪的问题: 代码如下: //提交...需要重新加载页面后才可以提交,而这个问题在Firefox,IE下没有出现。 马上Google了一下发现这是webkit内核浏览器的共有特性,这样做是为了防止表
博文链接:https://clarancepeng.iteye.com/blog/112040
代码如下 复制代码代码如下: <!... <head> <title>Button在Form中具有submit的特性</title>...meta charset=”utf-8″&...非IE6、7中会依次弹出 1, 3。说明依次触发了button的click事件,且自动将for
//提交前去掉form file.form && $$E.addEvent(file.form, "submit", $$F.bind(this.dispose, this)); //插入form file.parentNode.insertBefore(form, file).appendChild(file); this._form = ...
在提交参数可以用来指向一个特定的提交按钮,其formaction , formenctype , formmethod , formnovalidate和formtarget属性可以影响提交。 此外,在构建用于提交的条目列表时,将包括提交者; 通常,不包括按钮。...
html form只有一个TextBox, 没有submit按钮, 点Enter 提交form. B. >1个TextBox, 没有submit按钮, 点Enter ,form没有响应。 C. 页面有一个(或多个)submit按钮, 点Enter, 触发第一个submit 按钮click。 2. ...
如: 代码如下: document.formname.submit(); return false; 以后要注意了 后面尝试了另一种方法: 代码如下: if ($(“#formid”).validationEngine(“validate”)){ document.getElementById(“formid”).submit(); ...
true:falseif (ie){function ctlent(eventobject){if(event.ctrlKey && window.event.keyCode==13){this.document.form1.submit();}}}[removed] <form action=”http://www.jluvip.com/index.html” method=POST...
本文实例讲述了IE浏览器下JS脚本提交表单后,不能自动提示问题解决方法。分享给大家供大家参考,具体如下: 经常我们用表单提交东西,在提交后,浏览器会自动记录你输入的东西,下次你再输入的时候,可以重新选择,...
3.2.3 在ie 8或ie 9中调试 / 83 3.3 在chrome中调试 / 84 3.4 调试工具的总结 / 84 3.5 调试技巧 / 85 3.6 本章小结 / 89 第4章 ext js的基础架构 / 90 4.1 ext js框架的命名空间:ext / 90 4.1.1 概述 / 90...
formPlugin based on jQuery and json2.Simple form submit plugin based on jQuery 1.8.x && json2.jsSupport Firefox, Chrome, IE 8 && high version of IEThis plugin build under utf-8 encoding environmentYou...
Submit Form.mxp 当你在下拉菜单中选择一项条件后会自动转向另一页。 Form Auto Clear.mxp 自动清除文本域里面的默认文字。 Linecraft Highlight-Restore Form.mxp 当鼠标点击或离开一个表单元素时,改变其背景...
-修正IE7下不能以下划线作为CSS中类名的前缀的BUG(feedback:Steve.Wei)。 -添加定时器控件Timer,用来定时发起AJAX请求。 +2009-09-06 v2.1.0 -Button的Pressed属性值能够正确的反映客户端的变化。 -优化...
-修正IE7下不能以下划线作为CSS中类名的前缀的BUG(feedback:Steve.Wei)。 -添加定时器控件Timer,用来定时发起AJAX请求。 +2009-09-06 v2.1.0 -Button的Pressed属性值能够正确的反映客户端的变化。 -优化...
1、IE8的getElementById只支持id,不支持name 如:<...标签,默认是会提交Form的,因为IE8的<button>标签的type默认是submit的 所以要么设置一下type=button,要么设置onclick的时候,return false;
不过在IE6,safari4,ff3.5,opera10,chrome中,按Enter,不但激发form的submit事件,同时也会激发提交按钮的onclick,激发顺序为提交按钮的 onclick → form 的 onsubmit。 键盘事件 键盘事件 [Ctrl+A 全选 ...
为表格添加序号,不支持动态表格。 Live clock.mxp Download 点击下载 为我们插入一个动态的时钟。 Kaosweaver PHP Upload.mxp Download 点击下载 把图片上传到你的网站。 PHP Date and time.mxp Download 点击...
(注释1) 所以,如果要控制提交行为的话(比如,提交前检查必填项是否已填),可以在type=”submit”的“input”后添加Javascript“onXXX(比如onClick)”事件。而如果需要用异步交互来检测相关字段,则无效了。...