从重置input file标签中看jQuery的 .val() 和 .attr(“value”) 区别


Posted in Javascript onJune 12, 2016

背景:

在清空input file标签选中值时,分别用了以下方法,发现有的对有的错:

【√】$("#file")[0].value = "";
【√】$("#file")[0].value = null;

【×】$("#file").attr("value","");
【×】$("#file").attr("value",null);
【√】$("#file").val("");
【√】$("#file").val(null);

为什么同样是改变value值,得到的结果却不同呢?

释疑:

查阅stackoverflow《jQuery .val() vs .attr(“value”)》Question,里面解答如下:

The gist is that .attr(...) is only getting the objects value at the start (when the html is created). val() is getting the object's property value which can change many times.

翻译过来就是:

.val()设置的是input的value属性,input是HTMLInputElement的实例,value是通过setter方法定义的,当被赋值时,就会把值写到input里面;而改变value属性的方法,实际上操作的是dom的value属性,会触发浏览器的repaint,更新input的值。

以上所述是小编给大家介绍的从重置input file标签中看jQuery的 .val() 和 .attr(“value”) 区别 ,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
WEB高性能开发之疯狂的HTML压缩
Jun 19 Javascript
JavaScript继承方式实例
Oct 29 Javascript
jQuery图片预加载 等比缩放实现代码
Oct 04 Javascript
Microsfot .NET Framework4.0框架 安装失败的解决方法
Aug 14 Javascript
Ext JS框架程序中阻止键盘触发回退或者刷新页面的代码分享
Jun 07 Javascript
AngularJS基础 ng-init 指令简单示例
Aug 02 Javascript
vue better scroll 无法滚动的解决方法
Jun 07 Javascript
vue cli 3.0 使用全过程解析
Jun 14 Javascript
详解webpack loader和plugin编写
Oct 12 Javascript
微信小程序带动画弹窗组件使用方法详解
Nov 27 Javascript
vue实现计算器功能
Feb 22 Javascript
详解JavaScript作用域、作用域链和闭包的用法
Sep 03 Javascript
Java框架SSH结合Easyui控件实现省市县三级联动示例解析
Jun 12 #Javascript
jQuery基于toggle实现click触发DIV的显示与隐藏问题分析
Jun 12 #Javascript
javascript jquery对form元素的常见操作详解
Jun 12 #Javascript
js实现当鼠标移到表格上时显示这一格全部内容的代码
Jun 12 #Javascript
浅谈JS中逗号运算符的用法
Jun 12 #Javascript
Node.js Addons翻译(C/C++扩展)
Jun 12 #Javascript
基于JS代码实现当鼠标悬停表格上显示这一格的全部内容
Jun 12 #Javascript
You might like
PHP编程最快明白(第一讲 软件环境和准备工作)
2010/10/25 PHP
php GeoIP的使用教程
2011/03/09 PHP
php和数据库结合的一个简单的web实例 代码分析 (php初学者)
2011/07/28 PHP
Symfony2安装的方法(2种方法)
2016/02/04 PHP
JavaScript版代码高亮
2006/06/26 Javascript
网页设计常用的一些技巧
2006/12/22 Javascript
URL编码转换,escape() encodeURI() encodeURIComponent()
2006/12/27 Javascript
Javascript miscellanea -display data real time, using window.status
2007/01/09 Javascript
为javascript添加String.Format方法
2020/08/11 Javascript
js的表单操作 简单计算器
2011/12/29 Javascript
js 本地预览的简单实现方法
2014/02/18 Javascript
JavaScript支持的最大递归调用次数分析
2014/06/24 Javascript
jQuery使用before()和after()在元素前后添加内容的方法
2015/03/26 Javascript
jQuery+HTML5实现手机摇一摇换衣特效
2015/06/05 Javascript
Angular懒加载机制刷新后无法回退的快速解决方法
2016/08/30 Javascript
AngularJS1.X学习笔记2-数据绑定详解
2017/04/01 Javascript
Vue2.0权限树组件实现代码
2017/08/29 Javascript
利用pm2部署多个node.js项目的配置教程
2017/10/22 Javascript
layui添加动态菜单与选项卡
2019/07/26 Javascript
关于layui toolbar和template的结合使用方法
2019/09/19 Javascript
layui-tree实现Ajax异步请求后动态添加节点的方法
2019/09/23 Javascript
vue实现编辑器键盘抬起时内容跟随光标距顶位置向上滚动效果
2020/05/28 Javascript
js实现鼠标拖曳效果
2020/12/30 Javascript
Python和php通信乱码问题解决方法
2014/04/15 Python
浅谈python字典多键值及重复键值的使用
2016/11/04 Python
对pandas的层次索引与取值的新方法详解
2018/11/06 Python
Python生成随机验证码代码实例解析
2020/06/09 Python
Python GUI库Tkiner使用方法代码示例
2020/11/27 Python
python中PyQuery库用法分享
2021/01/15 Python
CSS实现半透明边框与多重边框的场景分析
2019/11/13 HTML / CSS
介绍一下你对SOA的认识
2016/04/24 面试题
《花的勇气》教后反思
2014/02/12 职场文书
施工员岗位职责
2014/03/16 职场文书
主持人演讲稿
2014/05/13 职场文书
群众路线组织生活会发言材料
2014/10/17 职场文书
违章停车检讨书
2014/10/21 职场文书