Javascript 如何在Jquery中从HTMLDOM获取属性?
我有一个HTML DOM保存在JavaScript变量中,我可以如何获取它的属性。 经验:Javascript 如何在Jquery中从HTMLDOM获取属性?,javascript,jquery,html,ajax,dom,Javascript,Jquery,Html,Ajax,Dom,我有一个HTML DOM保存在JavaScript变量中,我可以如何获取它的属性。 经验: //html元素是ajax响应 var element_html=‘Heading’; var id=“标题2\u 48”; var数据顺序=“10” 如何获取这些id和数据顺序尝试jQuery解决方案: $(element_html).attr("id"); $(element_html).attr("data-order"); var d=document.createElement("div"
//html元素是ajax响应
var element_html=‘Heading’;
var id=“标题2\u 48”;
var数据顺序=“10”
如何获取这些id和数据顺序尝试jQuery解决方案:
$(element_html).attr("id");
$(element_html).attr("data-order");
var d=document.createElement("div");
d.innerHTML = (element_html);
var attrs = d.firstChild.attributes;
var element_html_id = attrs["id"];
var element_html_data_order = attrs["data-order"];
下一个对于性能来说甚至更好,因为它只创建了一个jQuery对象:
var jWrapper = $(element_html);
var element_html_id = jWrapper.attr("id");
var element_html_data_order = jWrapper.attr("data-order");
或者您可以尝试香草JavaScript解决方案:
$(element_html).attr("id");
$(element_html).attr("data-order");
var d=document.createElement("div");
d.innerHTML = (element_html);
var attrs = d.firstChild.attributes;
var element_html_id = attrs["id"];
var element_html_data_order = attrs["data-order"];
(JSFiddle:)试试jQuery解决方案:
$(element_html).attr("id");
$(element_html).attr("data-order");
var d=document.createElement("div");
d.innerHTML = (element_html);
var attrs = d.firstChild.attributes;
var element_html_id = attrs["id"];
var element_html_data_order = attrs["data-order"];
下一个对于性能来说甚至更好,因为它只创建了一个jQuery对象:
var jWrapper = $(element_html);
var element_html_id = jWrapper.attr("id");
var element_html_data_order = jWrapper.attr("data-order");
或者您可以尝试香草JavaScript解决方案:
$(element_html).attr("id");
$(element_html).attr("data-order");
var d=document.createElement("div");
d.innerHTML = (element_html);
var attrs = d.firstChild.attributes;
var element_html_id = attrs["id"];
var element_html_data_order = attrs["data-order"];
(JSFiddle:)将元素包装到Jquery对象中
var val = $(element_html).attr("id");
将元素包装到Jquery对象中
var val = $(element_html).attr("id");
var元素_html='Heading';
log($(element_html).filter('h1').attr('id'));
log($(element_html).filter('h1').attr('data-order'));
作品;) var元素_html='Heading';
log($(element_html).filter('h1').attr('id'));
log($(element_html).filter('h1').attr('data-order'));
作品;)
更新如下:
在上面的代码中,find
将不起作用,理解这一点是我的错误
$(element_html).prop('id');
$(element_html).prop('data-order');
多亏了“烤”的暗示
更新如下:
在上面的代码中,find
将不起作用,理解这一点是我的错误
$(element_html).prop('id');
$(element_html).prop('data-order');
多亏了“烤”的提示。试试这个
$(element_html).find('h1').attr('id');
$(element_html).find('h1').data('order');
您还可以使用类名app control
而不是h1
进行筛选。您还可以使用filter
而不是find
$(element_html).filter('h1').attr('id');
$(element_html).filter('h1').data('order');
像这样试试
$(element_html).find('h1').attr('id');
$(element_html).find('h1').data('order');
您还可以使用类名app control
而不是h1
进行筛选。您还可以使用filter
而不是find
$(element_html).filter('h1').attr('id');
$(element_html).filter('h1').data('order');
将其包装在jquery对象中,只有在附加到某个元素时才能访问该对象。或者在jquery对象中包装将其包装在jquery对象中,只有在附加到某个元素时才能访问该对象。或者用jquery包装object@roasted ... 是的,根据你的评论,我编辑了它并贴了一张小提琴,所以它works@roasted ... 是的,根据你的评论,我对它进行了编辑并贴了一张提琴,这样就可以了。谢谢老板,我从你的回答中得到了另一个好主意;谢谢你的建议,我已经编辑了我的ans…我想find也会有用的谢谢老板,我从你的回答中得到了另一个好主意。数据(“订单”);我已经编辑了我的ans…我想find也会的work@roasted:我可以知道原因吗?因为.find()正在查找子体,这里的h1不是包装对象的子体:要使用.find(),您需要这样的内容:
$(''.html(element_html).find('h1').prop('id'))
@broading:我可以知道原因吗?因为.find()正在寻找后代,这里的h1不是包装对象的后代:要使用.find(),您需要这样的东西:$('').html(element_html).find('h1').prop('id')