如何使用javascript或jquery从字符串中提取html标记的内容?

如何使用javascript或jquery从字符串中提取html标记的内容?,javascript,jquery,html,Javascript,Jquery,Html,也许这是很基本的,但我很困惑。 我有一个简单的html页面,包含许多部分(div)。我有一个字符串,其中包含javascript中的html标记。代码如下: <html xmlns="http://www.w3.org/1999/xhtml"> <head> <script type="text/javascript"> var str1="<html><body><div id='item1'><h2>This

也许这是很基本的,但我很困惑。 我有一个简单的html页面,包含许多部分(div)。我有一个字符串,其中包含javascript中的html标记。代码如下:

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<script type="text/javascript">
var str1="<html><body><div id='item1'><h2>This is a heading1</h2><p>This is a paragraph1.</p></div><div id='item2'><h2>This is a heading2</h2><p>This is another paragraph.</p></div><div id='lastdiv'>last</div></body></html>";
</script>
</head>
<body>
<div id="title1"></div>
<div id="new1"></div>
<div id="title2"></div>
<div id="new2"></div>
</body>
</html>

var str1=“这是标题1这是段落1。

这是标题2这是另一段。

最后一段”;
我想提取html标记的内容(从javascript中的字符串中),并在我的html页面中所需的部分显示该内容

i、 e.我希望在
中显示“这是一个标题1”,在
中显示“这是一个段落1”,第二对标签也是如此

我需要所有这些只在客户端工作。我曾尝试使用HTML DOM getElementByTagName方法,但它变得太复杂了。我对jquery知之甚少。我很困惑。我不知道该怎么办。您能指导我使用什么-javascript或jquery以及如何使用它吗?有没有一种方法可以从字符串中识别并遍历它

如何从str1中提取“This is heading1”(以及html标记中包含的类似内容)??我不知道这些函数的索引,因此无法在javascript中使用substr()或substring()函数。

首先,您应该澄清如何从自己的html获取源html。如果您使用的是Ajax,那么应该将源代码标记为html,甚至是xml。

document.getElementById(“{ID of element}”).innerHTML

如果使用jquery $('selector').html()

hilo
警报($('#test').html());
使用“getter”和“setter”,我们可以重复以下模式:

  • 目标是我们希望填充的页面上的元素
  • 从 弦


var str1=“这是标题1这是段落1。

这是标题2这是另一段。

最后一段”; $(函数(){ var$str1=$(str1);//这会将字符串转换为真正的html //以某个对象为目标,用字符串中的某个对象填充它 $('#title1').text($str1.find('h2').eq(0.text()); $('#new1').text($str1.find('p').eq(1.text()); $('#title2').text($str1.find('h2').eq(1.text()); $('#new2').text($str1.find('p').eq(1.text()); })
让我在回答之前先说一句,我不认为我完全理解您想要做什么……但是我认为您想用一些数据源来替换一些(尽管听起来像是所有)html

我在这里装配了一个简单的示例JSFIDLE:

这在目标div上使用jquery进行简单替换


希望这会有所帮助,祝你好运。

IMHO,你可以通过两个步骤在jquery中完成这项工作:

步骤1)将字符串解析为XML/HTML文档。

var text = $htmlDoc.text( jquery_selector );
至少有两种方法可以做到这一点:

a) 正如Sineteta所提到的

 var htmlString = "<html><div></div></html>";
 var $htmlDoc = $( htmlString );
请参阅

 var htmlString = "<html><div></div></html>";
 var $htmlDoc = $( htmlString );
var htmlString = "<html><div></div></html>";
var htmlDoc = $.parseXML( htmlString );
var $htmlDoc = $( htmlDoc );
var text = $htmlDoc.text( jquery_selector );