<!DOCTYPE html>
<html>
<body>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.5/jquery.min.js"></script>
<div id="hel"></div>
<script>
txt="<script>alert('Test');</script>";
var headerIcon = '<div>hi</div>';
var messageBox = $("<div class='textDiv'><span class='sp'></span></div>");
$(document).ready(function(){
messageBox.text(txt);
//$(".textDiv .sp").text(txt);
$('#hel').append(headerIcon,messageBox);
});
</script>
</body>
</html>
输出是
hi
<script>alert("Test");</script>
但是如果我使用 $(".textDiv .sp").text(txt); 而不是 messageBox.text(txt); 输出只有 hi 当我使用 $(".textDiv .sp").text(txt); 时出了什么问题?
编辑:我不想注入 html。我只想显示为文本。但我只想知道为什么 messageBox.text(txt); 有效,但 $(".textDiv .sp").text(txt); 不