簡體   English   中英

Jquery:從字符串中獲取頭部和正文標記內容

[英]Jquery: Get Head and Body Tag Contents from string

我有一個如下字符串:

<head>
    This is the Head
</head>
<body>
    <div>
        <div>
            <p> Body Content <br /></p>
            <p>&nbsp; Hello World <br /></p>
        </div>
    </div>
</body>

它有頭部和身體標簽。 現在我想要使用jquery的head標簽和body標簽的內容。 有人可以幫忙嗎?

假設您的字符串變量是“s”,那么代碼是:

var html = document.createElement('html');
html.innerHTML = s;

var head = $(html).find('head:first');
var body = $(html).find('body:first');

這里將字符串解析為html對象,然后您就可以訪問這些元素。

這是相同的代碼

 var str = "<head>This is the Head</head><body><div><div><p> Body Content <br /> </p><p>&nbsp; Hello World <br /></p> </div></div></body>"; //This will parse the string to HTML var htmlString = $.parseHTML(str); //To get the Body content console.log(htmlString[1].innerHTML); //To get the HTML Tag Content console.log(htmlString[0].data); 
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 

您也可以使用正則表達式,基本和簡單以及使用的另一個好處是,您也可以獲得任何其他HTML。 請找到以下代碼:

 var html = '<head>\\ This is the Head\\ </head>\\ <body>\\ <div>\\ <div>\\ <p> Body Content <br /></p>\\ <p>&nbsp; Hello World <br /></p>\\ </div>\\ </div>\\ </body>'; var reg = /\\<head[^>]*\\>([^]*)\\<\\/head/m; var head = html.match( reg )[1]; var reg2 = /\\<body[^>]*\\>([^]*)\\<\\/body/m; var body = html.match( reg2 )[1]; document.getElementById("Head").innerHTML = head; document.getElementById("body").innerHTML = body; 
 .head{ border:1px solid red; } .body{ border:1px solid red; } 
 <div class="head"> <h1> Heading </h1><br /> <div id="Head"> </div> </div> <br /> <div class="body"> <h1> Body </h1> <br /> <div id="body"> </div> </div> 

你有沒有考慮嘗試這些jquery表達式。

$('head').html();
$('body').html();

對於組合文本,以下jquery表達式。

$('head').text();
$('body').text();

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM