之前项目中使用的是jquery-1.6.3.js,在这个版本号中,假设我们想获取输入框的值,能够使用$("input").attr("value")或者是$("input").val(),这2种方式是等价的。

<input type="text" id="speed" />
$("#speed").attr("value");
$("#speed").val();

近期到了还有一个项目组,使用的是jquery-2.1.1.js,结果发现了问题。我使用的是IE10浏览器。

<input type="text" id="speed" value="45"/>
$("#speed").attr("value");//始终是45

假设text控件给了默认值,那么使用attr("value")得到的结果始终是45,不会得到输入控件实际输入的值。

<input type="text" id="speed" />
$("#speed").attr("value");//始终是undefined

假设text控件没有设置value属性,那么使用attr("value")得到的结果始终是undefined。

经过測试,无论是1.6.3版本号,还是2.1.1版本号,使用val()函数。总是可以成功获取输入框的实际值。

<input type="text" id="speed" value="45"/>
$("#speed").val();//可以得到输入框的实际值

我又尝试了1.9.1版本号,发现attr("value")和val()的表现跟2.1.1版本号是一致的。

不知道jquery是从哪儿个版本号发生改变的。反正以后大家使用jquery时须要注意这个问题。假设没有想到版本号升级带来的不兼容问题。那么可能会找不到问题的所在。由此可见版本号升级是一件非常有风险的事情。一定要经过充分的验证,最好能有自己主动化的验证用例。假设全部的測试用例都能通过,那么基本意味着。版本号的API功能都是兼容的,升级后风险相对来说非常小。假设不明确版本号发生的改变。就冒然升级。风险非常大。

最新文章

  1. 如何将一个Excel文件中的sheet移动到另外一个Excel?
  2. ZTE and TP-Link RomPager - DoS Exploit
  3. Shell基础-环境变量配置文件
  4. 基于TcpListener的web服务器
  5. 自定义控件winfrom
  6. Linux下安装Scim-googlepinyin输入法和设置Sublime Text中文输入
  7. 使用subst创建虚拟磁盘及设置分区卷标
  8. Razor视图引擎基础语法
  9. MFC radio button 绑定变量用法
  10. JQuery -&amp;gt; 超级简单的下拉菜单
  11. Mysql之库表操作(胖胖老师)
  12. python处理参数的getopt的使用
  13. 关于H5页面的测试总结与分析
  14. Linux Centos7.x下安装部署Jira和confluence以及破解方法详述
  15. python中的三元运算
  16. org.springframework.boot.web.server.WebServerException: Unable to create tempDir. java.io.tmpdir is set to C:\Users\ADMINI~1\AppData\Local\Temp\2\
  17. CentOS 6 升级 curl
  18. LightGBM调参总结
  19. Redis3.2.4 Cluster集群搭建
  20. 网工最实用最常用的网络命令之一——Ping 命令详解(一)

热门文章

  1. 奇怪吸引子---Arneodo
  2. ScaleIO 1.32现在可以免费下载安装使用了(除生产环境之外)
  3. WebView&amp;HTML5-----使用WebView播放HTML5视频文件
  4. Java面试问题总结
  5. 知乎:GAN 的发展对于研究通用人工智能有什么意义?
  6. python中read() readline()以及readlines()用法
  7. Oracle中对数字加汉字的排序(完好)
  8. Dijkstra和Floyd_warshall
  9. Wifidog协议V1
  10. VMware 安装Arch Linux记录