本文链接:https://blog.csdn.net/mottohlm/article/details/78364196
....
今天在项目中遇到这么一个JS报错:
原因是代码中有这么一段:
对,就是
varotherWageChageType =document.getElementById("otherWageChageType").value;
中的“otherWageChageType”这个ID不存在导致的。
因为JS报错,导致页面死掉不动了。
如果把这句改为
$("#otherWageChageType").val();
却不会报错 ,只是 varotherWageChageType
取得的值是undefined ,页面不会报错,更不会死掉,只是后续用此值所要做的判断没法得到正确想要的结果而已。
就用户体验来说,用jquery的更好些。

其实
document.getElementById("id") 得到 的是[object HTMLDivElement]一个DOM对象;
$("#id") 得到 的是[object Object]一个Jquery 对象。

明显经过封装后的jquery 对象对我们更友好点,中间经过判断优化 使得 $("#id").val() 这个方法一定不会报错。

另外再说一点,其实这两个对象是可以相互转换的哦

$(document.getElementById("id")) 就可以由一个DOM对象变为一个Jquery 对象了;
$("#id")[0] 或是$("#id").get(0) 就可以由一个jquery 对象变为一个DOM对象了。
————————————————
版权声明:本文为CSDN博主「mottohlm」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/mottohlm/article/details/78364196

document.getElementById("id").value与$("#id").val()之间的区别的更多相关文章

  1. 富文本的一般处理方式,document.getElementById('富文本的ID').contentWindow.document.body.innerHTML = '%s'" %(content)

    如果套不出来,去问前端开发帮忙吧 哈哈

  2. 创建母版页导致js出现“ 'document.getElementById(...)' 为空或不是对象”错误

    导读:一个控件在设计时的ID往往不同于生成页面后的ID,为了获得控件客户端ID,我们可以从生成的页面入手,冷静思考,把握主次,从底层框架入手 本文将为大家介绍一下 ASP.NET中在创建母版页时引来的 ...

  3. js用document.getElementById时要注意!

    <!DOCTYPE html> <html lang="en"> <head> <script src="http://code ...

  4. Id.value与document.getElementById("Id").value的区别

    如果标签Id在Form表单里面的话,直接Id.value就不能用了,而是要用Form.Id.value来取值或设置值 所以最好用document.getElementById("Id&quo ...

  5. jquery中的$("#id")与document.getElementById("id")的区别

    以前一直认为jquery中的$("#id")和document.getElementByIdx_x("id")得到的效果是一样的,今天做特效的时候才发现并不是这 ...

  6. 获得输入框的文本document.getElementById('id').value;

    <input id="demo" type="text" value="" > x=document.getElementByI ...

  7. Document.getElementById 与 $('#id')的区别

    一直认为jquery中的$("#id")和document.getElementByIdx_x("id")得到的效果是一样的,今天才发现并不是这么一回事,通过测 ...

  8. jquery 中的 $("#id") 与 document.getElementById("id") 的区别

    以前没注意过,认为jquery 中的 $("#air") 与 document.getElementById("air") 是一回事,指的是同一个东西.在今天写 ...

  9. function $(id){ return document.getElementById(id); }导致所有的js不能用解决办法。。。。

    function $(id){ return document.getElementById(id); } document.getElementById(id) 是获得id这个元素的. 相当于定义了 ...

随机推荐

  1. Postman实现文件下载功能测试

    背景 实现一个模板下载的功能,然后想用postman进行文件下载的功能测试 实现 然后会弹出下载框 tips:我第一次点的时候,没有任何反应,以为是卡死了,后来发现是弹出的下载框在postman框下面 ...

  2. EasyUI笔记(一)Base基础

    总结: 1)每个UI都是通过属性.事件和方法运作的 2)用JS加载时只需传入一个参数(用大括号{}包围),包含若干个键值对,之间用逗号隔开: 3)事件也是写在JS加载时的方法中,也是键值对形式,值是匿 ...

  3. 2019牛客多校第二场H题(悬线法)

    把以前的题补补,用悬线求面积第二大的子矩形.我们先求出最大子矩阵的面积,并记录其行三个方向上的悬线长度.然后排除这个矩形,记得还得特判少一行或者少一列的情况 #include <bits/std ...

  4. 《操作系统真象还原》MBR

    以下是读本书第三章的收获. 如何知道一个源程序的各符号(指令和变量)地址?简单来说,地址就是该符号偏移文件开头的距离,符号的地址是按顺序编排的,所以两个相邻的符号,其地址也是相邻的.对于指令来说,指令 ...

  5. Python三元表达式、列表推导式、生成器表达式

    1. 三元表达式 name=input('姓名>>: ') res='SB' if name == 'aaaa' else 'NB' print(res) 2. 列表推导式 #1.示例 e ...

  6. 判断合同金额是否可以转整形和sql语句中添加条件语句

    主要用到sqlserver语句中的判断语法 if (min_hetonge.Length > 0 && int.TryParse(min_hetonge, out min)) s ...

  7. afl-fuzz技术初探

    afl-fuzz技术初探 转载请注明出处:http://www.cnblogs.com/WangAoBo/p/8280352.html 参考了: http://pwn4.fun/2017/09/21/ ...

  8. Docker造化钟神秀

    之前闲暇之余有玩过一哈Dokcer容器,但是日子挺久了,然后挺多东西就忘记了,趁着今天有时间重拾一下docker的相关知识. 搜索下载镜像 docker search ubuntu docker pu ...

  9. STL中_Rb_tree的探索

    我们知道STL中我们常用的set与multiset和map与multimap都是基于红黑树.本文介绍了它们的在STL中的底层数据结构_Rb_tree的直接用法与部分函数.难点主要是_Rb_tree的各 ...

  10. 2019-08-23 纪中NOIP模拟A组

    T1 [JZOJ2908] 矩阵乘法 题目描述 给你一个 N*N 的矩阵,不用算矩阵乘法,但是每次询问一个子矩形的第 K 小数. 数据范围 对于 $20\%$ 的数据,$N \leq 100$,$Q ...