2013-06-17 13 views
9

Jak mogę wstawić zewnętrzny plik HTML do mojego pliku?W tym zewnętrzny plik HTML do innego pliku HTML

Na przykład:

<div id="header"> 

     Here show the external HTML code in the file, for example: name.html 

</div> 

Dziękuję bardzo!

+0

Proszę sprawdzić podobne pytania przed podjęciem nowego, jestem pewien, że zostało to wcześniej zadawane wiele razy. – Ozzy

+0

Jeśli są inne pytania, które mają lepsze odpowiedzi, czy ktoś mógłby je połączyć? Dzięki –

+0

@kapa Głosuję za ponownym otwarciem, ponieważ (1) powiązane pytanie dotyczy najlepszych praktyk, a ten zadaje praktyczne pytanie, (2) powiązane pytanie dotyczy ogólnie szablonów, a ten jest konkretnie o włączeniu zawartości zewnętrznego pliku (który może mieć inne zastosowania wykraczające poza szablon), (3) Odpowiedzi na to pytanie i to pytanie są zupełnie inne, z niewielkim nakładaniem się. – JBentley

Odpowiedz

8

Szukasz znacznika lub jeszcze lepiej, języka szablonowego po stronie serwera.

2

The iframe element.

<iframe src="name.html"></iframe> 

Ale treści, które mają pojawić się sposobem na wielu stronach jest lepiej obsługiwane using templates.

+0

Ale w ten sposób widzę kod źródłowy, prawda? Ponieważ moim celem jest to, że mój nagłówek, menu i stopka pojawiają się w wielu innych plikach HTML. Aby nie powtarzać w dowolnym momencie kodu, który preferuję, napisz jeden HTML dla każdej sekcji, a następnie wczytaj go na stronę (w ten sposób konserwacja jest łatwiejsza). – user2467899

+0

"http://stackoverflow.com/a/16132516/19068" - Tylko jeśli wyświetlasz źródło. – Quentin

+0

"Ponieważ moim celem jest to, że mój nagłówek, menu i stopka pojawiają się w wielu innych plikach HTML." - Następnie użyj szablonu zamiast funkcji HTML. – Quentin

8

Można użyć do tego obciążenia jQuery.

<script type="text/javascript"> 
$(document).ready(function(e) { 
    $('#header').load('name.html',function(){alert('loaded')}); 
}); 
</script> 

Nie zapomnij dołączyć biblioteki jquery przed powyższym kodem.

+4

Chociaż technicznie poprawne (to rzeczywiście będzie ładować zewnętrzny plik HTML), to tak, jakby robić operację nerki za pomocą koparki. Ponieważ pytanie nie jest jeszcze oznaczone jako jQuery, sugeruje to wyjście i uzyskanie koparki w wyraźnym celu wykonywania operacji nerek - co gorsza. –

21

Innym sposobem jest użycie znacznika obiektu. Działa to w Chrome, IE, Firefox, Safari i Opera.

<object data="html/stuff_to_include.html"> 
    Your browser doesn’t support the object tag. 
</object> 

więcej informacji na http://www.w3schools.com/tags/tag_object.asp

+0

dziękuję bardzo ... nie wiedziałem o tym – carinlynchin

+0

Powoduje to problemy z hrefami. Wczytują się domyślnie w ramkę obiektu. Musisz oznaczyć cel href jako macierzysty http://stackoverflow.com/a/1037870/852806 – HockeyJ

+0

thx, to jest dokładnie to, czego szukałem, thx. :RE –