jquery关于val,attr的一点总结
2015-12-02 14:15
656 查看
制作了一个输入框和textarea的上移下移功能,不过我并没有将控件移动,只是移动了下里边的值。
首先是JS
之后再测试的时候发现一点问题,在第一次向空间中输入值之后,点击上下移动,这样是没有问题的(这时候我使用的是js的setAttribute将上下相邻的输入框的值进行对调),但是当我把输入框里边的值手动改掉之后,再点击上移或者下移按钮,就出现了问题。经过debug之后确定时在赋值的时候出的问题,可是setAttribute(“vcalue”,test)这样的赋值应该是没有问题的才对,之后抱着尝试其他方法的心里,我使用了.value的方法,也就是("#id").value = test; 这样再继续测试,发现问题解决了。当时的textarea一开始使用的是.innerHtml,也是出现了上述问题,之后我也改用了.value进行赋值,问题解决。
之后是Jquery版本
在测试完js的方式之后,我进行了jquery的尝试,attr的原理和setAttribut其实的差不多的,大家应该都知道,尝试之后果然也是出现了同样的问题,而textarea使用的是text()方法赋值,也是不行的,最后还是使用了val(),bug没有再出现。
虽然问题解决了,但是最后还是没整明白是怎么回事,只是得出一个结论,只要是跟value属性有关的,全都用value或者val()进行取值赋值,跟其他属性相关的使用setAttribute和attr()进行属性值的修改。估计的到时候读读jquery源码才能懂了。
哪位大侠知道什么情况,求讲解。
毕竟新手。
首先是JS
之后再测试的时候发现一点问题,在第一次向空间中输入值之后,点击上下移动,这样是没有问题的(这时候我使用的是js的setAttribute将上下相邻的输入框的值进行对调),但是当我把输入框里边的值手动改掉之后,再点击上移或者下移按钮,就出现了问题。经过debug之后确定时在赋值的时候出的问题,可是setAttribute(“vcalue”,test)这样的赋值应该是没有问题的才对,之后抱着尝试其他方法的心里,我使用了.value的方法,也就是("#id").value = test; 这样再继续测试,发现问题解决了。当时的textarea一开始使用的是.innerHtml,也是出现了上述问题,之后我也改用了.value进行赋值,问题解决。
之后是Jquery版本
在测试完js的方式之后,我进行了jquery的尝试,attr的原理和setAttribut其实的差不多的,大家应该都知道,尝试之后果然也是出现了同样的问题,而textarea使用的是text()方法赋值,也是不行的,最后还是使用了val(),bug没有再出现。
虽然问题解决了,但是最后还是没整明白是怎么回事,只是得出一个结论,只要是跟value属性有关的,全都用value或者val()进行取值赋值,跟其他属性相关的使用setAttribute和attr()进行属性值的修改。估计的到时候读读jquery源码才能懂了。
哪位大侠知道什么情况,求讲解。
毕竟新手。
相关文章推荐
- jQuery 1.9.1源码分析系列(十三)之位置大小操作
- jquery+java选中批量删除
- Jquery 中 $('obj').attr('checked',true)失效的几种解决方案
- 解决jQuery使用JSONP时产生的错误
- jQuery事件绑定的最佳实践
- 欢迎使用CSDN-markdown编辑器
- jQuery选择器之基本选择器和层次选择器
- jQuery基础
- Web前端设计:Ajax+JQuery+Json
- jQuery使用JSONP时的错误处理
- jquery动画(定时器)
- jquery实现触发时更新下拉列表内容的方法
- jQuery简单实现input文本框内灰色提示文本效果的方法
- jquery实现简单文字提示效果
- 分享15个大家都熟知的jquery小技巧
- jQuery实现为控件添加水印文字效果(附源码)
- jquery 选项卡
- jQuery Easing 使用方法及其图解
- jQuery-1.9.1源码分析系列(十四) 一些jQuery工具
- jquery ui autocomplete ajax动态访问