Form元素使用笔记

FormElement

target 用于发送和接收响应的窗口名称

length 用于表示表单控件的数量

Form标签的target属性-----无刷新表单提交

document.forms获取页面中所有的form元素,可以通过数值索引或name值取得,但是不建议使用name去获得特定的表单,一是容易出错,而是将来的浏览器可能会不支持。也就是所谓的向后兼容。

elements属性,该属性是表单中所有表单元素的集合。是一个有序列表,可以通过数值索引或name取得。当几个元素使用同一个name,通过name获取到一个NodeList。

点击即可提交表单的三种元素

• input type=submit

• button type=submit

• input type=image

• 只要表单中存在上面列出的任何一种按钮,那么在相应表单控件拥有焦点的情况下,按回车键就可以提交该表单

• 以这种方式提交表单时,浏览器会在讲请求发送给服务器前出发submit事件。阻止这个事件的默认行为就可以取消表单提交。在这之前我们可以验证表单数据,来决定是否允许表单提交。

重复提交表单问题

• 第一次提交后禁用表单按钮

• 利用onsubmit事件处理程序取消后续的表单提交操作

表单字段

属性

• form 指向当前字段所属表单的指针

• type 当前字段的类型 可以动态修改该字段 改变input的类型

• value 当前字段将被提交给服务器的值

方法

• focus() 聚焦于该元素 但是当元素hidden或者不可见时会发生错误

• H5中有autofocus属性 布尔值

• 将其他元素的tabIndex属性设置为-1,然后再调用focus()方法。只有opera不支持。

• change 对于input和textarea元素在它们失去焦点并且value值改变时触发。select在其选项改变时触发

EventUtil

• change事件和blur事件触发的顺序不一定

文本框

i. size指定文本框能够显示的字符数

ii. 处理文本框的值不要用DOM方法,因为对value的修改不一定会反映在DOM中

iii. 选择文本。。。

iv. 过滤输入。。。

v. 自动切换。。。

H5的约束验证

FormData对象

是一个不透明的对象,现在暂时只有一个append可以操作,不能通过序列化手段得到其里面的内容,用法现在也只有一个,用于增强型的XMLHttpRequest对象的send方法中

表单提交

一般表单的提交用的都是用button然后用ajax来提交,但是用button就不能触发HTML5的自带表单验证,用submit的话就又会直接提交表单。

解决方法:用submit来提交表单,然后在js中监听submit方法,用ajax提交表单最后阻止submit的自动提交。

$("#submitform").on("submit",function(ev){                      $.ajax({                      });//阻止submit表单提交  ev.preventDefault();//或者return false  //return false;  });          $("form").submit(function(){//这里是要执行的代码event.preventDefault();        });


检测input的输入值

检测输入值的合法性

检测是否有值

functiontestVal(obj){for(vari=0;i

检测多选框是否至少选中一个值

functiontestCheckRio(iptName){varchks=$(".checkbox-row input[type=checkbox][name="+iptName+"]");varnumber=0;          $.each(chks,function(index){if(chks[index].checked==true){                  number++;              }          })if(number<=0){returnfalse;          }else{returntrue;          }      }

当input类型为Number时 输入其他类型数据没有value,maxlength没有作用,需要用slice方法

5) value=value.slice(0,5)"/>

date的样式和功能设置

改变默认样式

http://www.zhangxinxu.com/study/201306/pseudo-elements-to-style-type-date.html

移动端date的placeholder会显示一片空白,初始效果也没有,通过value值可以设置,但是必须是标准的日期格式

解决方法

i. 用伪类去为input模拟一个placeholder,这样只是设置了placeholder,当选择了日期之后,placeholder还是存在

input[type="date"]:before{content:attr(placeholder);color:red;          }

ii. JS配合使用

functionpickTime(iptName){varo =document.getElementById(iptName);              o.onfocus =function(){this.removeAttribute('placeholder');              };              o.onblur =function(){if(this.value =='')this.setAttribute('placeholder','请输入日期');              };          }

iii. 非date类型的input设置placeholder颜色的css

::-webkit-input-placeholder{color:red;}

file自定义样式

隐藏input,将它的点击事件绑定在其他元素上

选择上传

还可以同步将选择到的文件的文件名显示到页面上

$('input[id=introfile]').change(function(){varfile = $(this).val();varfileName = getFileName(file);functiongetFileName(o){varpos = o.lastIndexOf("\\");returno.substring(pos +1);          }          $('#introfileName').text(fileName);});

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,456评论 5 477
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,370评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,337评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,583评论 1 273
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,596评论 5 365
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,572评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,936评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,595评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,850评论 1 297
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,601评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,685评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,371评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,951评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,934评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,167评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 43,636评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,411评论 2 342

推荐阅读更多精彩内容