改写Form的submit
表单的一些应用常识:
1.在用户第一次提交完表单后应防止用户不耐烦而多次点击submit按钮,需要在onsubmit事件中制止用户的重复行为。
2.不要简单粗暴的用reset()重置表单,如果用户不想填写可以给他一个返回上一页面的按钮,让其离开。
3.通过触发阻止onsubmit事件的默认行为就可以阻止用户表单的提交。
4.能够在用户输入完一个内容后焦点自动跳到下一个内容。
5.除了select,其余有onchange事件的表单元素都是先触发onchang再触发onblur,前提是该表单内容有了改变且失去了焦点。
6.J高三上说select的onchange不用失去焦点就能发生有误,因为选择本身就让select失去了焦点,因此select选项改变的时候,先触发onblur再触发onchange
(未完待续)
用户提出一个需求,要求在表单填写完毕后敲击回车弹出一个自定义的对话框,且不能提交。
于是这就需要改写form的onsubmit事件,简单粗暴看代码:
HTML结构
<form id="ifm" action="">
<div>
<label>姓名:</label>
<input id="txtName" type="text" maxlength="16" /><br />
<label>年龄:</label>
<input id="txtAge" type="text" /><br />
<input type="submit" id="sum" />
</div>
</form>
JS语句
window.onload = function () {
var of = document.getElementById('ifm');
of.onsubmit = function () {//改写onsubmit事件
var oDiv = document.createElement('div');
var oIn = document.createElement('input');
oIn.type = 'text';
oDiv.appendChild(oIn);
oDiv.className = "divs";
document.body.appendChild(oDiv);
oIn.focus();//将焦点转移到对话框中
return false;//阻止默认行为,form默认提交后刷新页面
};
};
改写Form的submit的更多相关文章
- ASP.Net MVC跳转,分为form的submit提交跳转和ajax跳转
1,用jquery ajax跳转的话,需要在前台用window.location("跳转网址")来跳转,在success后使用 2,用原声的form的submit来跳转,如下图 3 ...
- EasyUI form ajax submit到MVC后,在IE下提示下载内容的解决办法
问题描述: 项目环境为,.Net Mvc5+EF6……前端框架使用的是EasyUI v1.4.4. 在视图页面中,使用form的submit方法提交表单数据时,如果是使用IE的话,请求成功后IE会提示 ...
- 【jquery采坑】Ajax配合form的submit提交(微擎表单提交,ajax验证,submit提交)
1.采坑:实现form的submit提交,在提交之前,进行ajax的不同校验,然后onsubmit=return check(),进行提交 1/1 目的:可以实现以 from的submit提交,然后还 ...
- 认真研究下HTML之id、name、form、submit
#起因 同事希望在提交之后关闭父窗口,但是,始终没有提交请求发出.他的代码大概如下: // <form id='f' action=... // <button onclick='fun( ...
- layui表单提交使用form.on('submit(sub)',function (){}) 使用ajax请求时回调不执行的原因及解决方法
ayui使用官方的表单模块form.on('submit(sub)',function (){}) 提交,使用ajax请求向后台请求一个执行结果,根据结果进行处理,出现回调无法执行,并且页面出现了刷新 ...
- form的submit与onsubmit的用法与区别
发生顺序:onsubmit -> submit1.阻止表单提单:<script>function submitFun(){ //逻辑判断 return true; //允 ...
- form的submit()方法不能触发onsubmit事件的解决方法,兼容各版本浏览器。
在处理表单提交的时候遇到一个问题,通常用<input type="submit" value="提交" />按钮来提交form,再监听form的on ...
- 电脑端支付宝支付 -前端获取支付宝返回的form 以及submit 调用支付扫码页面
前端调取支付宝支付接口(后台进行封装,没有直接调取支付宝接口),调用返回的数据中,将会有一串的form表单数据返回,我们需要将此表单在当前调用页面submit下,以跳转到支付扫码页: 支付宝返回的fo ...
- form在submit之前使用request.setCharacterEncoding是没用的
点击了submit按钮,就创建了另一个request了 比如你有a.jsp,上面有个form,form的action指向某个Servlet或者Action,那么你在a.jsp页面上写的request. ...
随机推荐
- 分享O'Reilly最新C语言指针数据
1.推荐书名 Understanding.and.Using.C.Pointers.pdf 2. 本书目录 Table of Content Chapter 1. Introduction Chapt ...
- unp.h
unp.h #ifndef _UNP_H_ #define _UNP_H_ #include <unistd.h> #include <stdio.h> #include &l ...
- 嵌入式中的 *(volatile unsigned int *)0x500 解释
C语言中*(volatile unsigned int *)0x500的解释: 如下: (unsigned int *)0x500:将地址0x500强制转化为int型指针*(unsigned int ...
- Java Collections Source Code Series 2 ---接口
废话开篇 自己学完Java Collections框架之后,其中的一个较大的收获就是接口对于层次的重要性.Java Collections的最终实现至少有几十个,其中很多都有非常相似的功能(metho ...
- SQL Server 批量插入数据的两种方法
在SQL Server 中插入一条数据使用Insert语句,但是如果想要批量插入一堆数据的话,循环使用Insert不仅效率低,而且会导致SQL一系统性能问题.下面介绍 SQL Server支持的两种批 ...
- C# 发送邮件实例
一.发送者首先要开启smtp服务,如QQ: 首先点QQ头像旁边的信封符号进入邮箱. 进入邮箱后点击顶部的设置按钮 3 点击二级目录“账户” 拉到中下部 把这两项勾上 4 点击保存 二.编辑代码,如 ...
- 8 C#中的字符串输出
我们在前面已经用Console.WriteLine("*********")往dos窗口中输出过字符串.我们还定义过字符串的变量. string words ="我喜欢D ...
- C# 微信公众号
using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.We ...
- android开发实现静默安装(fota升级)
这里只提供一个思路,也是咨询大神才了解到的. fota升级主要用于系统及系统应用的升级,不过貌似也会弹出提示用于用户确认.既然做到系统级别了,估计也一样可以静默安装的.
- token验证-微信公众平台开发3(asp.net)
童鞋们直接看代码吧:(我这里是ashx处理程序写的类,开发过网站的一般都知道) <%@ WebHandler Language="C#" class="weixin ...