详谈jQuery中使用attr(), prop(), val()获取value的异同


Posted in jQuery onApril 25, 2017

jQuery中有3个获取元素value值的函数比较相似:attr(), prop(), val();拿来比较一下。  

示例代码:

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title></title>
  <script src="jquery-2.1.4.js"></script>

</head>
<body>
<input type="text" value="123"/>
<button id="btn">click</button>
<script>

  $("#btn").click(function(){
    var attr=$("input").attr("value");
    var prop=$("input").prop("value");
    var val=$("input").val();
    console.log(attr);
    console.log(prop);
    console.log(val);
  })
</script>
</body>

代码如上所示,为输入框设定了初始值:123,此时点击按钮,控制台输出为:

123
123
123

改变输入框的值,此时控制台输出:

 

123
123thgf
123thgf

如果我们没有为文本框设定初始值,即删除value=”123”后,依旧使用如上js代码,则相应输出如下:

undefined

attr()输出为undefined,而prop()和val()输出为“空”。

输入value值后:控制台输出为:

undefined
asdasd
asdasd

attr()输出依然为undefined,而prop()和val()则输出实际值。

可见,prop()和val()都能获取到文本框的实际value值,而attr()获取的则始终为文档结构中的value的属性值,与文本框实际值无关,并不会变化。

以上这篇详谈jQuery中使用attr(), prop(), val()获取value的异同就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

jQuery 相关文章推荐
jQuery插件FusionCharts实现的MSBar2D图效果示例【附demo源码】
Mar 24 jQuery
Jquery EasyUI $.Parser
Jun 02 jQuery
JQuery EasyUI的一些常用组件
Jul 12 jQuery
jQuery动态添加.active 实现导航效果代码思路详解
Aug 29 jQuery
jquery实现限制textarea输入字数的方法
Sep 06 jQuery
利用JQuery操作iframe父页面、子页面的元素和方法汇总
Sep 10 jQuery
JavaScript实现离开页面前提示功能【附jQuery实现方法】
Sep 26 jQuery
jQuery阻止事件冒泡实例分析
Jul 03 jQuery
jquery 通过ajax请求获取后台数据显示在表格上的方法
Aug 08 jQuery
js/jquery遍历对象和数组的方法分析【forEach,map与each方法】
Feb 27 jQuery
jQuery实现简单日历效果
Jul 05 jQuery
jQuery加PHP实现图片上传并提交的示例代码
Jul 16 jQuery
jquery.form.js异步提交表单详解
Apr 25 #jQuery
关于jQuery中fade(),show()起始位置的一点小发现
Apr 25 #jQuery
jquery submit()不能提交表单的解决方法
Apr 24 #jQuery
jquery实现异步加载图片(懒加载图片一种方式)
Apr 24 #jQuery
使用jQuery ajaxupload插件实现无刷新上传文件
Apr 23 #jQuery
jQuery实现百度登录框的动态切换效果
Apr 21 #jQuery
推荐三款日期选择插件(My97DatePicker、jquery.datepicker、Mobiscroll)
Apr 21 #jQuery
You might like
那些年一起学习的PHP(三)
2012/03/22 PHP
php生成短网址示例
2014/05/05 PHP
PHP也能干大事 随机函数
2015/04/14 PHP
浅谈JavaScript中面向对象技术的模拟
2006/09/25 Javascript
asp javascript 实现关闭窗口时保存数据的办法
2007/11/24 Javascript
JQuery 将元素显示在屏幕的中央的代码
2010/02/27 Javascript
JQuery 中几个类选择器的简单使用介绍
2013/03/14 Javascript
详谈JavaScript内存泄漏
2014/11/14 Javascript
jquery Validation表单验证使用详解
2020/09/12 Javascript
javascript实现网页屏蔽Backspace事件,输入框不屏蔽
2015/07/21 Javascript
详解JavaScript对象序列化
2016/01/19 Javascript
VUEJS实战之构建基础并渲染出列表(1)
2016/06/13 Javascript
jquery实现自适应banner焦点图
2017/02/16 Javascript
Vue实现百度下拉提示搜索功能
2017/06/21 Javascript
phantomjs导出html到pdf的方法总结
2017/10/19 Javascript
js合并两个数组生成合并后的key:value数组
2018/05/09 Javascript
Angular(5.2-&gt;6.1)升级小结
2018/12/27 Javascript
javascript之分片上传,断点续传的实际项目实现详解
2019/09/05 Javascript
Vue移动端实现图片上传及超过1M压缩上传
2019/12/23 Javascript
js实现自动播放匀速轮播图
2020/02/06 Javascript
如何利用javascript接收json信息并进行处理
2020/08/06 Javascript
vue项目实现多语言切换的思路
2020/09/17 Javascript
Vue 的 v-model用法实例
2020/11/23 Vue.js
[53:29]完美世界DOTA2联赛循环赛 DM vs Matador BO2第二场 11.04
2020/11/05 DOTA
[48:28]完美世界DOTA2联赛循环赛FTD vs Magma第二场 10月30日
2020/10/31 DOTA
Python是编译运行的验证方法
2015/01/30 Python
用ldap作为django后端用户登录验证的实现
2020/12/07 Python
浅谈盘点5种基于Python生成的个性化语音方法
2021/02/05 Python
国际商务专业职业生涯规划书范文
2014/01/17 职场文书
运动会解说词100字
2014/01/31 职场文书
业务内勤岗位职责
2014/04/30 职场文书
机械设计制造及其自动化专业求职信
2014/06/17 职场文书
小学生安全责任书
2014/07/25 职场文书
2014年公务员工作总结
2014/11/18 职场文书
我的兄弟姐妹观后感
2015/06/15 职场文书
postman中form-data、x-www-form-urlencoded、raw、binary的区别介绍
2022/01/18 HTML / CSS