我需要一些帮助才能将javascrpipt函数转换为jQuery。以下是我原来的JS代码:
var text = document.getElementsByTagName("pre")[0].innerHTML;
经过对Stack的一点研究后,我得出了这个等价物:
var text = $(data).$('pre')[0].html();
数据是我在$.get
请求中收到的数据,如下所示。
$.get (
mypage,
function parse(data) {
var raw = $(data).$('pre')[0].html();
}
);
但这似乎不起作用,我对jQuery不是很好。
答案 0 :(得分:1)
当data
拥有HTML时,$(data).find('pre').eq(0).html()
应该这样做。
答案 1 :(得分:0)
要从数据中获取带有标记pre
的第一个元素,您可以在jQuery中执行以下操作,
$('pre',data).eq(0).html();
答案 2 :(得分:0)
$(data).$('pre')[0].html();
不起作用的原因是[0]
部分将第一个找到的元素提取为DOM元素,而不是jQuery对象,因此调用.html()
失败。
其他人已经指出了解决方案。 .eq(0)
获取第一个元素作为jQuery对象(根据moonwave99和melc的答案),这就是你可以在其上调用.html()
的原因。
有关差异的进一步阅读,请参阅:jQuery object and DOM element