input、button的不同type值在ajax提交表单时导致的陷阱
AJAX 不同 type 提交 表单 导致 input 陷阱
2023-06-13 09:14:08 时间
今天在做利用connection作表单提交过程中发现,标签"input"跟"botton"中的type属性设置原来也是一门学问。
在开发过程中,为了使html代码更加整洁,我首先利用YAHOO.util.Event.addListener(obj,"click",callback)类加载"click"事件来提交表单,YAHOO.util.Connect.asyncRequest("POST")方式来上传表单数据,如果表单信息不正确,那么作返回处理。而提交的按钮我采用的是<buttontype="submit">提交</button>。
这时发现除了IE6能够对我的表单数据作出正确的处理外,FIREFOX包括IE7都不能对我的错误处理作出回应(callback方法中,正对错误的处理方式是:只要一碰到错误,那么就通过returnfalse的方式返回)。
这时在我的思路里想的是,在语句中提交表单数据前我已经做了返回处理,可页面怎么还是给刷新了呢。
晚上回到家里再次对今天碰到的问题做测试,结果发现,我忽略了一点,数据也的确是有提交了,并且在地址栏中可以明确地看到各种数据,而事实也证明,数据肯定是被提交了,于是想到了我的按钮,按钮的类别设置是"submit",之前在写代码时,都是直接在"input"或者"button"中,如果类别设置为"submit"时,都是这样写的onclick="returnfun();"或者onclick="fun();returnfalse;";这自然是不会出现问题,怪就怪在,addListener类的值并不是直接影响到按钮的,一点击按钮,自然也就会提交数据了。
惨痛啊~~~~
附:button默认type值为submit,因此最好标识下类别!!!谨记!
在开发过程中,为了使html代码更加整洁,我首先利用YAHOO.util.Event.addListener(obj,"click",callback)类加载"click"事件来提交表单,YAHOO.util.Connect.asyncRequest("POST")方式来上传表单数据,如果表单信息不正确,那么作返回处理。而提交的按钮我采用的是<buttontype="submit">提交</button>。
这时发现除了IE6能够对我的表单数据作出正确的处理外,FIREFOX包括IE7都不能对我的错误处理作出回应(callback方法中,正对错误的处理方式是:只要一碰到错误,那么就通过returnfalse的方式返回)。
这时在我的思路里想的是,在语句中提交表单数据前我已经做了返回处理,可页面怎么还是给刷新了呢。
晚上回到家里再次对今天碰到的问题做测试,结果发现,我忽略了一点,数据也的确是有提交了,并且在地址栏中可以明确地看到各种数据,而事实也证明,数据肯定是被提交了,于是想到了我的按钮,按钮的类别设置是"submit",之前在写代码时,都是直接在"input"或者"button"中,如果类别设置为"submit"时,都是这样写的onclick="returnfun();"或者onclick="fun();returnfalse;";这自然是不会出现问题,怪就怪在,addListener类的值并不是直接影响到按钮的,一点击按钮,自然也就会提交数据了。
惨痛啊~~~~
附:button默认type值为submit,因此最好标识下类别!!!谨记!
相关文章
- laravel使用ajax 表单提交后台验证如何返回错误信息???
- axios + ajax 面试题总结
- 前端使用ajax_ajax属于前端吗
- 开心档之jQuery - AJAX get() 和 post() 方法
- AJAX发送和接收Blob对象(案例实战)
- Ajax无缝接入MySQL数据库(ajax请求mysql)
- 使用Ajax实现MySQL数据库操作(ajax操作mysql)
- MySQL与Ajax的联动大大提高网站数据交互的效率(ajax和mysql连用)
- 使用Ajax和Mysql实现简单点赞功能(ajax mysql点赞)
- MySQL与Ajax 精彩无穷的开发实现(ajax与mysql)
- AJAX技术简化Oracle数据库的访问处理(ajax连接oracle)
- Ajax$.getJSON案例详解
- AJAX的跨域访问-两种有效的解决方法介绍
- 禁止ajax缓存获取程序最新数据的方法
- jquery+ajax+C#实现无刷新操作数据库数据的简单实例
- jQuery中ajax和post处理json的不同示例对比
- php+ajax实时输入自动搜索匹配的方法