在Javascript中,要将文本添加到已存在的div中,我会使用
document.getElementById("container").innerHTML = document.getElementById("container").innerHTML + "Text";
因此,div中已存在的文本不会被删除,并且只需使用以下内容就可以重置div中写入的内容:
document.getElementById("container").innerHTML = "Text";
但是,因为我正在使用jquery从带有
的txt文件加载文本$( "#container" ).load( "text.txt" );
这似乎不可能。
我不是JS或Jquery的大专家,但有没有办法将两者混合在一起仍然可以重置div中的文本或向其中添加文本,同时仍然从外部获取该文本文件?
希望我已经足够清楚地解释我正在尝试做什么
答案 0 :(得分:0)
尝试使用AJAX获取数据但不填充数据:
$.ajax({
url: 'text.txt',
success: function(text){
document.getElementById("container").innerHTML += text;
}
});
Ajax功能更全面 - 它是“更难”的功能。 load()
的堂兄,所以你也可以添加一个错误捕捉器(以及其他一些东西):
$.ajax({
url: 'text.txt',
success: function(text){
document.getElementById("container").innerHTML += text;
},
error: function(e){
document.getElementById("container").innerHTML += 'Data could not be loaded! (' + e.statusText + ')';
}
});
您可以在jQuery文档中了解有关AJAX的更多信息:http://api.jquery.com/jquery.ajax/
答案 1 :(得分:0)
首先:
JQuery代码:
$(document).ready(function() {
$.ajax({
url : "text.txt",
dataType: "text",
success: function (data) {
data.appendTo("#container")
},
error: function(e){
// Show some error, for example:
alert("Data failed to load from text.txt file")
}
});
});
我相信 appendTo 将是您通过document.getElementById("container").innerHTML
尝试完成的更简单的版本,以替换文字。试一试,然后根据需要修改它。如果您对此有任何疑问,请与我们联系。
为了清楚说明,JQuery是现有JavaScript语言的扩展。这意味着,您始终可以在感知的JQuery代码中使用JavaScript。您可以通过添加的功能学习如何利用JQuery的优势来支持您的JavaScript代码,其中一个很好的例子就是您在此处看到的文件加载的AJAX实现。要了解详情,请访问: Learn JQuery 。