1.在js中我们要动态的创建标准DOM对象一般使用:var obj= 
document.createElement('div');但是如果在ajax请求时返回的是一个带有标签的字符串,如:data:[["<span
id="0">aaa</span>",'小明',‘28’]],这时获取到的data[0][0],是一个字符串,我们获取不到id。现在又一种方法可以解决:

1.1  js:

主要使用innerHTML,innerHTML: 动态的往一个元素中插内容时使用,




innerHTML不是w3c标准,是由ie发明创造出来的,但是由于这个属性的方便性,和当时微老大的地位,其它非ie浏览器也内置了innerHTML并给出了支持。

虽然innerHTML不是w3c标准,但是却是一个事实标准,这个事实标准很重要,也就是目前主流浏览器都支持innerHTML,自然就做到了兼容多浏览器。



 function parseDom(arg) {

   var objE = document.createElement("div");

   objE.innerHTML = arg;

   return objE.childNodes;

};


我们首先用标准的方法创建一个div出来,在用innerHTML来插入一个元素,其实也就是利用浏览器自己的内核算法来实现的一个转换。在用childNodes返回出来。
我们不用去解析字符串,而是交给浏览器自己来完成,这样既准确又无误。


childNodes返回的是一个类似数组的list。所以如果是一个元素,要使用这个dom需要这样使用obj[0]。如果是多个同级的dom转换,可以这样使用obj[0]、obj[1]…


1.2 jq

$(objE )就可以,可以$(item[0]).attr('id');


2.DOM转为字符串更加简单,可以使用三方类库来实现

jquery 中提供的有dom 转字符串的方法 var domStr= $("#").html();





友情链接
KaDraw流程图
API参考文档
OK工具箱
云服务器优惠
阿里云优惠券
腾讯云优惠券
华为云优惠券
站点信息
问题反馈
邮箱:[email protected]
QQ群:637538335
关注微信