1

在 JQuery 中将字符串转换为 html 对象时,我没有得到整个段,我想知道我是否正确使用它。

这是填充“数据”后的代码:

    console.log(data);
    console.log("---");
    console.log($(data).html());

结果如下:

<div style='width:260px; height:128px; text-align:left' id='productTn'><img src='images/rProduct02.jpg' id='productTnImg' class='productTnImg' alt='Selected Product' style='border-style:none' height=128 width=128 /></div><div id='productLI' style='width:281px; min-height:185px'><b>Audi</b></div>
--- 
<img src="images/rProduct02.jpg" id="productTnImg" class="productTnImg" alt="Selected Product" style="border-style:none" height="128" width="128"> 

如您所见,在将 HTML 转换为对象,然后再将其转换回字符串之后,只有 IMG 部分存在,其余部分都消失了。我在这里做错了吗?

4

3 回答 3

1

$(data).html();参考innerHtmlof data,这将返回img您的情况。

有了这个$(data).html(); ,你没有将你的数据转换成html,你只是要求 jquery 返回html你的内部div

你问 -字符串到对象没有按预期工作

您的data变量已经是一个对象

阅读更多关于.html()

于 2013-04-11T22:36:54.930 回答
1

一个打印data整个字符串的变量的实际内容,同时.html()检索div.

console.log(data); // prints the actual content of data
console.log($(data).html()); // prints the inner HTML of data
于 2013-04-11T22:37:02.587 回答
1

jQuery.html()方法将引用innerHTML匹配元素的 。如果你想要outerHTML你可以尝试这样的事情:console.log($(data).wrap("<div/>").parent().html());虽然取决于你到底需要什么,也许你最好只引用data自己?包装data节点只是为了能够选择它可能会引入其他问题(例如 CSS 选择器)。

于 2013-04-11T22:39:24.893 回答