如何实现dom对象和jquery 删除dom对象间的转化

不用jquery时很简单如下:
var id="input1";
var obj=document.getElementById(id);
用jquery想使用统一的风格获取对象,请问jquery下怎么实现?
采纳的答案
jquery就是
var id="input1";
var obj=$('#'+id);
jquery调用函数时传递对象参数&
/UIweb/jquery-function-args-object.html
在jquery中利用:
$("#id")取出的是jquery对象,这是个集合对象,要想获得dom对象,可以用$("#id").get(i),其中i是jquery对象序列号,从0开始计算。
举例如下:
$("#input1")获取的不是dom对象,而是jquery对象。
而采用:var obj=document.getElementById(id); 获取的才是dom对象。
所以需要将jquery对象转化为dom对象,所以后面需要加上get()方法。参数名称就是jquery对象的序列号,从0开始计算。
或者是用
$("[id=input1]") 可以直接获取dom对象
#+id,其实还是拼接字符串。
$("#input1");

jquery("#input1");
也一样吧,$(id)
已解决问题
未解决问题当前位置:&>&&>&
jquey笔记之dom对象与jquery对象互换的例子
发布时间:编辑:thatboy
本文介绍下,在jquery中实现dom对象与jquery对象之间转换的例子,有需要的朋友参考下吧。
dom对象与对象的相互转换
&meta http-equiv=&Content-Type& content=&text/charset=utf-8&&
&script type=&text/& src=&jquery-1.3.1.js&&&/script&
&input type=&text& id=&test& value=&test&&
&input type=&button& value=&提交& onclick=&testing()&&
&script type=&text/javascript&&
//纯js方法
var obj1=document.getElementById(&test&);
function testing(){
var obj1=document.getElementById(&test&);
window.alert(obj1.value);
//如果是jquery对象,规定一个jquery对象名是 $开头
var $obj2=$(&#test&);
window.alert($obj2.val()); //输出test
//dom-&jquery 对象
$(document).ready(function(){
var $obj3=$(obj1);
//obj3就是jquery对象
window.alert($obj3.val());
//jquery-&dom对象
//有两种方法.1.
$(document).ready(function(){
//第一种方法 在jquery开发中,把一个对象当做集合处理
//var obj4=$obj2[0];
//obj4就是dom对象
//第二种方法
var obj4=$obj2.get(0);
window.alert(obj4.value); //输出test
本文标题:
本页链接:
12345678910您的位置: >
jQuery对象和DOM的相互转换
学习标签:
本文导读:只有jQuery对象才能调用jQuery类库的各种函数,同样有些dom对象的属性和方法在jQuery上也是无法调用的,不过基本上jQuery类库提供的函数包含了所有的dom操作。这就需要我们知道如何将jQuery对象和DOM的相互转换的方法
什么是jQuery对象?
---就是通过jQuery包装DOM对象后产生的对象。jQuery对象是jQuery独有的,其可以使用jQuery里的方法。
$(&#test&).html() 意思是指:获取ID为test的元素内的html代码。其中html()是jQuery里的方法
这段代码等同于用DOM实现代码:
document.getElementByIdx_x(&id&).innerHTML;
虽然jQuery对象是包装DOM对象后产生的,但是jQuery无法使用DOM对象的任何方法,同理DOM对象也不能使用jQuery里的方法.乱使用会报错。
比如:$(&#test&).innerHTML、document.getElementByIdx_x(&id&).html()之类的写法都是错误的。
jQuery对象和DOM对象是可以相互转换的,因为它们所操作的对象都是DOM元素,只不过jQuery对象包含了多个DOM元素,而DOM对象本身就是一个DOM元素。简单地说,jQuery对象是DOM元素的数组,也称为类数组,而DOM对象就是单个的DOM元素。
jQuery对象转成DOM对象
jQuery对象不能使用DOM中的方法,但是如果对jQuery对象所提供的方法不熟悉,或者jQuery没有封装想要的方法,不得不实用DOM对象的时候,就需要将jQuery对象转换为DOM对象。
转换的方法有以下两种。
第一,借助数组下标来读取jQuery对象集合中的某个DOM元素对象。例如,在下面的示例中,先使用jQuery匹配文档中所有的li元素,返回一个jQuery对象,然后通过数组下标的方式读取jQuery集合中第一个DOM元素,此时再返回的是DOM对象。这时就可以调用DOM属性innerHTML了。
JScript 代码 &&复制
&script type=&text/javascript& &
$(function()...{
var $li = $(&li&);
//返回jQuery对象
var li =$li[0];
//返回DOM对象
alert(li.innerHTML);
&li&列表1&/li&
&li&列表2&/li&
&li&列表3&/li&
第二,借助jQuery对象的get()方法。为get()方法传递一个下标值,即可从jQuery对象中取出一个DOM对象元素。例如,上面示例可以改写为下面的方法。
JScript 代码 &&复制
&script type=&text/javascript& &
$(function()...{
var $li = $(&li&);
//返回jQuery对象
var li =$li.get(0);
//返回DOM对象
alert(li.innerHTML);
把DOM对象转换为jQuery对象
对于一个DOM对象,只需要用$()把DOM对象包装起来,就可以获得一个jQuery对象了,然后它就可以自由调用jQuery定义的方法,方式为$(DOM对象)。
JScript 代码 &&复制
&script type=&text/javascript& &
$(function()...{
var li = document.getElementsByTagName(&li&); //获取所有li元素
var $li = $(li[0]);
//把第一个li元素封装为jQuery对象
alert($li.html());
//调用jQuery对象的方法
&li&列表1&/li&
&li&列表2&/li&
&li&列表3&/li&
您可能感兴趣
一月好评排行榜jQurey对象和DOM对象的相互转换
在讨论jQurey对象和DOM对象的相互转换之前,我们先约定定义变量的风格。如果我们获取的对象是jQuery对象,那么我们在变量前面加上$,例如:
var&& $variable&&& =&&&jQuery 对象 ;
如果获取的是DOM对象,则定义如下:
var&&variable&&&& =&&&DOM对象;
本书中的例子均会以这种方式呈现,以方便读者阅读。
1. jQuery对象转成DOM对象
前面说了,jQuery对象不能使用DOM中的方法,但如果对jQuery对象所提供的方法不熟悉,或者jQuery没有封装想要的方法,这时不得不使用DOM对象的时候,该怎么办呢?
jQuery提供两种方式来将一个jQuery对象转换成DOM对象:[ index ]和get( index )。
(1) jQuery对象是一个数组对象,可以通过 [index] 的方式,来得到相应的 DOM 对象。
jQuery代码如下:
var&& $cr&&& =&&& $("#cr");&&&&& // jQuery对象
var&&cr&&&& =&&& $cr[0];&&&&&&& // DOM对象
alert(cr.checked)&&&&&&&&&&&&& //检测这个checkbox是否被选中了
(2) 另一种方式是jQuery本身提供的,通过get(index) 方法,来得到相应的 DOM 对象。
jQuery代码如下:
var $cr&&& =&&&& $("#cr");&&&&&&& // jQuery对象
var cr&&&& =&&&& $cr.get(0);&&&&& // DOM对象
alert(cr.checked)&&&&&&&&&&&& //检测这个checkbox是否被选中了
2. DOM对象转成jQuery对象
对于已经是一个DOM对象的,只需要用$( ) 把 DOM对象包装起来,就可以获得一个如假包换的jQuery对象了。方式为 $( DOM对象)。
jQuery代码如下:
var cr&& =&&document.getElementById("cr");&&&& //DOM对象
var $cr&& =&& $(cr);&&&&&&&&&&&&&&&&&&&&&&&&&&& // jQuery 对象
转换后,就可以任意使用jQuery中的方法了。
通过以上提供的方法,我们可以任意的相互转换 jQuery对象和DOM对象。
最后再次强调下,DOM对象才能使用DOM中的方法,jQuery对象是不可以用DOM中的方法的,但jQuery对象提供了一套更加完善的工具用于操作DOM。。
注:我们所用的jQuery对象都是通过$()函数制造出来的,$()函数就是一个jQuery对象的制造工厂。
下面举个简单的例子,来加深对jQuery对象和DOM对象的理解。
大家应该都玩过论坛,有的论坛注册的时候,用户必须先要同意论坛的规章制度,才可以进行下一步操作,效果如图1-15所示。
(点击查看大图)图1-15 某论坛注册截图
这个是某论坛的注册页面,用户必须选中页面下方的"同意并接受注册协议",否则不能注册。
做个简单的例子,来实现这个功能。新建一个空白的页面,然后添加如下HTML代码:
type="checkbox" id="cr" for="cr"我已经阅读了上面制度.
HTML代码初始效果如图1-16所示:
初始化状态
然后编写JavaScript部分。前面说过了,没有特殊声明,jQuery库是默认导入的。
我们可以通过$("#cr")获取到复选框元素,然后通过判断复选框是否被选中,来执行下一步操作。
首先,用DOM方式来判断复选框是否被选中,代码如下:
$(document).ready(function(){&&&&&&&&&&& //等待dom元素加载完毕.
&&&&&&&&& var $cr = $("#cr");&&&&&&&&&&&&& //jQuery对象
&&&&& var cr = $cr[0];&&&&&&& //DOM对象,或者 $cr.get(0)
&&&&& $cr.click(function(){
&&&&&&&&&& if(cr.checked){&&&&&&& //DOM方式判断
&&&&&&&&&&&&& alert("感谢你的支持!你可以继续操作!");
&&&&&&&&&& }
实现上述代码后,选中"我已经阅读了上面制度",效果如图1-17所示。
选中选项后的效果图
换一种方式,我们使用jQuery中的方法来判断选项是否被选中,代码如下:
$(document).ready(function(){&&&&&&&&&&&&&&&&& //等待dom元素加载完毕.
&&&&&&&&& var $cr = $("#cr");&&&&&&&&&&&&&&&&&& //jQuery对象
&&&&&&&& $cr.click(function(){
&&&&&&&&&&&&&& if($cr.is(":checked")){&&&&&&&& //jQuery方式判断
&&&&&&&&&&&&&&&&& alert("感谢你的支持!你可以继续操作!");
&&&&&&&&&&&&&& }
&&&&&&&& })
上面的例子简单的演示了DOM对象和jQuery对象的不同,但最终效果都一样。
/jiang_yy_jiang/blog/item/27ab17cdb49e4.html
阅读(...) 评论()

我要回帖

更多关于 jquery 删除dom 的文章

 

随机推荐