我最近发现了一种方法,可以使用jQuery Ajax将外部文件的内容包含到网站中。
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
<script>
$.get("http://something.com/content.txt", function(a) {
document.write("<p>Some text! - " + a + "</p>")
});
</script>
输出将在此之后:
<p>Some text! - Content from external file</p>
除了此代码覆盖整个标记外,它工作正常。其他一切都将被排除在外。
任何想法如何解决这个问题?
答案 0 :(得分:2)
document.write
将替换所有内容。
您正在使用jQuery,因此如果您想保留现有代码,请尝试使用.append()
:
$.get("http://something.com/content.txt", function(a) {
$("#element-where-inserting").append(a);
});
答案 1 :(得分:0)
如果使用jquery并且假设您的div
标识为mycontent
且文件内容为纯文本,则对文档中的特定选择器进行修改:
$("#mycontent").text(a);
答案 2 :(得分:0)
这是因为document.write()
方法重写了整个html文档。
你应该做的是找到你想通过javascript放置你的回复内容的元素(使用html()
方法,因为你正在使用jQuery):
$("#elementId").html(response);
其中response
是您的ajax内容。
答案 3 :(得分:0)
使用$([some element]).load([your URL])
这将加载您收到的数据并将其放入目标元素内。
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
<script>
$('some-div').load("http://something.com/content.txt")
</script>