JQuery Object vs. DOM element

简介: JQuery Object 和 DOM的区别 HTML DOM 定义了访问和操作HTML文档的标准方法。其中 document 是DOM 树的根对象 ,在浏览器宿主环境中,可以通过JS操作HTML DOM,例如: document.getElementById("intro").innerHTML; 如果将DOM element alert 出来,其显示为 [object H

JQuery Object 和 DOM的区别

HTML DOM 定义了访问和操作HTML文档的标准方法。其中 document 是DOM 树的根对象 ,在浏览器宿主环境中,可以通过JS操作HTML DOM,例如:

document.getElementById("intro").innerHTML;

如果将DOM element alert 出来,其显示为 [object HTMLFormElement]

参考:http://www.w3school.com.cn/htmldom/index.asp


JQuery Object 包含了一个DOM element 的数组, 例如 $('form') 表示当前页面中所有form元素的JQuery object数组。

如果将JQuery Object  alert 出来,其显示为 [object Object]

参考:http://api.jquery.com/Types/#jQuery


JQuery Object, DOM 互转

JQuery Object 转 DOM

如果确定该JQuery Object 只包含一个DOM对象,可以直接获取,例如

var domEle = $('#uniqueId').get(0);

如果是一组DOM对象,可以用each迭代,例如,打印所有checkbox的value代码。

$(':checkbox').each(function(){
        console.log("DOM way: "+this.value);
	console.log("JQuery way: "+$(this).val());
});
关于console.log(), 我也是今天才知道,在Chrome中,可以用Ctrl+Shift+I 打开调试Javascript 的console, 不仅可以打印log,还可以设置断点debug。 比alert 好用多了,看来还是要多看资料啊。

DOM 转 JQuery Object 就 更简单了, 用$( ) 包住 DOM Object  就可以了, 例如, $(document.getElementById("uniqueId"))


实战

页面上有多个form表单,要求在每个表单里的checkbox按照数据库中已有信息,进行预先勾选。

<html>
 <head>
  <title> Checkbox demo</title>
 </head>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript">
$(document).ready(function(){
	$("form").each(function(){
		console.log("DOM Object" + this);
		console.log("JQuery Object" + $(this));
		var existingOpts = $(this).find('.existingOpts').val();
		console.log("Checked options: "+ existingOpts );
		$(this).find(':checkbox').each(function(){
			if (existingOpts.indexOf($(this).val()) != -1)
			{
				$(this).attr('checked','checked');
			}
		});
	});
});
</script>

 <body>
  <form id='1'>
	<input type="hidden" name="existingOpts" class='existingOpts' value="apple;orange;"/>
	<input type="checkbox" id="mycheckbox" name="test.checkbox" value="apple"> Apple
	<input type='checkbox' name='test.checkbox' value='orange'> Orange
  </form>
  <form id='2'>
	<input type="hidden" name="existingOpts" class='existingOpts' value="apple;"/>
	<input type='checkbox' name='test.checkbox' value='apple'>Apple
	<input type='checkbox' name='test.checkbox' value='orange'>Orange
  </form>
 </body>
</html>



目录
相关文章
|
7月前
|
JavaScript 前端开发
使用jQuery操作DOM元素
使用jQuery操作DOM元素
|
2月前
|
JavaScript 前端开发 开发者
深入了解jQuery:轻松实现高效的DOM操作
【10月更文挑战第11天】深入了解jQuery:轻松实现高效的DOM操作
58 0
|
3月前
|
JavaScript 前端开发
jQuery 操作 DOM 及 CSS
本文介绍了如何使用jQuery进行DOM操作和CSS样式的修改,包括如何获取和设置元素的文本内容、属性值、添加和删除元素,以及如何使用jQuery的addClass、removeClass、toggleClass、hasClass和css方法来操作元素的CSS。通过示例代码,展示了jQuery在实际开发中的便捷性。
jQuery 操作 DOM 及 CSS
|
2月前
|
C++ Python
Python Tricks--- Object Comparisons:“is” vs “==”
Python Tricks--- Object Comparisons:“is” vs “==”
20 1
|
3月前
|
JSON JavaScript 前端开发
Jquery常用操作汇总,dom操作,ajax请求
本文汇总了jQuery的一些常用操作,包括DOM元素的选择、添加、移除,表单操作,以及如何使用jQuery发送Ajax请求,涵盖了GET、POST请求和文件上传等常见场景。
|
2月前
|
JavaScript 前端开发 API
深入理解jQuery:高效DOM操作与事件处理
【10月更文挑战第11天】深入理解jQuery:高效DOM操作与事件处理
21 0
|
5月前
|
JavaScript 前端开发 API
前端框架与库 - jQuery基础与DOM操作
【7月更文挑战第18天】jQuery 是一个简化JavaScript任务的库,以其“write less, do more”理念著称。核心功能包括DOM操作、事件处理和Ajax。DOM操作如选择元素(`$(&quot;p&quot;)`、`$(&quot;#myDiv&quot;)`、`$(&quot;.myClass&quot;)`)、创建及添加元素、修改属性和内容。事件处理如绑定(`click`)和触发(`trigger`)。常见问题涉及`$`符号冲突(使用`jQuery`代替)、异步加载管理和选择器性能优化。了解并规避这些问题能提升jQuery使用效率。
36 0
|
5月前
|
XML 数据格式 Python
【Python】已解决:AttributeError: ‘function’ object has no attribute ‘ELement’
【Python】已解决:AttributeError: ‘function’ object has no attribute ‘ELement’
174 0
|
6月前
|
JavaScript 前端开发 API
jQuery对象与DOM对象简介及相互转换
jQuery对象与DOM对象简介及相互转换
N..
|
7月前
|
JavaScript 前端开发 容器
jQuery中的DOM操作
jQuery中的DOM操作
N..
71 1

相关课程

更多