input标签相关

来源:互联网 发布:分级阅读 知乎 编辑:程序博客网 时间:2024/06/16 04:12

1.change事件:当input捕获到焦点后,系统储存当前值
,当input焦点离开后,判断当前值与之前存储的值是否不等,如果为true则触发onchange事件。
所以在js,操作dom进行赋值的情况下无法触发change事件。

解决:在进行赋值的时候顺带触发change事件,$(“#”).xx.trigger(“change”)

2.input type=file类型,无法通过js直接进行触发click事件弹框;

解决:通过隐藏input框,通过另一个Button的click事件在,handler函数进行触发,document.getElementById(“xxx”).click();或者使用label标签添加for属性与input type=”file”标签的id相关联,通过点击label标签触发input,弹出文件选择框;

3.表单内的Button标签点击会触发也面刷新,添加type=”button”解决,或者使用input type=”button”进行处理;

4.input的accept属性只能在弹出文件选择框后,不显示其他类型,可以通过显示全部文件避开,需要在filelist相应文件的type判断mime去进行文件限制;

mime类型参考:http://www.w3school.com.cn/media/media_mimeref.asp
https://developer.mozilla.org/zh-CN/docs/Web/HTTP/Basics_of_HTTP/MIME_types

5.文件上传表单,使用formdata进行模拟表单提交,new formData()后,formdata.append(“fileName”,file);在xhr中提交即可;

原创粉丝点击