toStaticHTML
הסרת סקריפטים ואירועים מתוך קטע HTML
בהמשך לפוסטים שלי על
IE8 נראה הפעם מתודה מעניינית שבעזרתה נוכל לקחת html שקבלנו ולהסיר ממנה את הסקריפטים והאירועים.
נניח שיש לכם את קוד ה - html הבא:
<div id="myDiv">
<script>
function test() {
alert("Testing, Testing, 123...");
}
</script>
<span onclick="test()">Click Me</span>
</div>
כשהמשתמש ילחץ על ה - span הוא יקבל את ההודעה.
כעת אם נפעיל את הסקריפט הבא:
<script type="text/javascript">
function sanitize() {
var szInput = myDiv.innerHTML;
var szStaticHTML = toStaticHTML(szInput);
ResultComment = "\ntoStaticHTML sanitized the HTML fragment as follows:\n"
+ "Original Content:\n" + szInput + "\n"
+ "Static Content:\n" + szStaticHTML + "\n";
alert(ResultComment);
}
</script>
נקבל את ההודעה הבאה:
כמו שאפשר לראות ה - Ststic Content מכיל אך ורק את ה - HTML הססטי.