2017-02-07 3 views
1

I wie unten ein String habe:JQuery: Holen Sie Kopf und Körper Tag Inhalt von String

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

Es ist sowohl Kopf und Körper-Tags haben. Jetzt möchte ich den Inhalt von Head-Tag und Body-Tag mit jquery. Kann jemand helfen?

+1

Könnten Sie zeigen den Code, den Sie so versucht haben, weit? Es ist sicherlich möglich, aber vielleicht möchten Sie etwas mehr Hintergrundinformationen geben, um bessere alternative Ansätze vorschlagen zu können. –

+0

verbesserte Formatierung. – Jim

Antwort

0

Hier parse die Zeichenfolge zu HTML-Objekt und dann können Sie auf die Elemente zugreifen.

Hier ist der Code für die gleiche

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>

+0

Während dieser Link die Frage beantworten kann, ist es besser, die wesentlichen Teile der Antwort hier aufzunehmen und den Link als Referenz bereitzustellen. Nur-Link-Antworten können ungültig werden, wenn sich die verknüpfte Seite ändert. - [Aus Bewertung] (/ review/low-quality-posts/15130381) – JimHawkins

+0

Danke @JimHawkins. Wird in Zukunft aufpassen. – Krishna9960

-1

haben Sie darüber nachgedacht, diese jquery Ausdrücke versuchen.

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

für kombinierten Text die folgenden jquery Ausdrücke.

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

Sie können den regulären Ausdruck verwenden, als auch mit einfach und schlicht und einem weiteren Vorteile der Verwendung das ist Sie auch andere HTML zu bekommen. Bitte finden Sie den Code unten:

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>

1

Nun Ihre String-Variable "s" annehmen, so ist der Code:

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

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