使html中的段落包含文件中的文本
我有一个html段落(在一个div中),我想在其中显示一个简单的固定文本。文本有点长,因此我希望文本位于单独的txt文件中。使html中的段落包含文件中的文本,html,Html,我有一个html段落(在一个div中),我想在其中显示一个简单的固定文本。文本有点长,因此我希望文本位于单独的txt文件中。 差不多 <div><p txt=file.txt></p></div> 我可以这样做吗?您需要使用JavaScript或PHP、ASP等服务器端语言 (应该可以用HTML标记来完成,这很有意义,但我没有使用,因为PHP…etc非常简单/常见) Javascript可以工作:这里有一个链接,指向通过stackoverfl
差不多
<div><p txt=file.txt></p></div>
我可以这样做吗?您需要使用JavaScript或PHP、ASP等服务器端语言 (应该可以用HTML
标记来完成,这很有意义,但我没有使用,因为PHP…etc非常简单/常见)
Javascript可以工作:这里有一个链接,指向通过stackoverflow上的Javascript执行类似操作的人:
PHP(作为服务器端语言的示例)是最简单的方法:
<div><p><?php include('myFile.txt'); ?></p></div>
要使用此功能(如果您不熟悉PHP),可以: 1) 2)将.html文件的文件扩展名更改为.php
3)将我的PHP示例中的代码粘贴到新重命名的PHP文件主体中的某个地方我将使用javascript来实现这一点
var txtFile = new XMLHttpRequest();
txtFile.open("GET", "http://my.remote.url/myremotefile.txt", true);
txtFile.onreadystatechange = function() {
if (txtFile.readyState === 4 && txtFile.status == 200) {
allText = txtFile.responseText;
}
document.getElementById('your div id').innerHTML = allText;
这只是一个代码示例,需要对所有浏览器进行调整,等等。Javascript将在这里实现这一点
function load() {
var file = new XMLHttpRequest();
file.open("GET", "http://remote.tld/random.txt", true);
file.onreadystatechange = function() {
if (file.readyState === 4) { // Makes sure the document is ready to parse
if (file.status === 200) { // Makes sure it's found the file
text = file.responseText;
document.getElementById("div1").innerHTML = text;
}
}
}
}
window.onLoad = load();
您可以在纯html中使用
:
不过,此方法有一些限制,例如,它无法使块的大小与内容相匹配-您必须手动指定
宽度
和高度
。样式将不会应用于文本。以下是我已成功测试的javascript代码:
var txtFile = new XMLHttpRequest();
var allText = "file not found";
txtFile.onreadystatechange = function () {
if (txtFile.readyState === XMLHttpRequest.DONE && txtFile.status == 200) {
allText = txtFile.responseText;
allText = allText.split("\n").join("<br>");
}
document.getElementById('txt').innerHTML = allText;
}
txtFile.open("GET", '/result/client.txt', true);
txtFile.send(null);
var txtFile=new XMLHttpRequest();
var allText=“未找到文件”;
txtFile.onreadystatechange=函数(){
if(txtFile.readyState==XMLHttpRequest.DONE&&txtFile.status==200){
allText=txtFile.responseText;
allText=allText.split(“\n”).join(
”);
}
document.getElementById('txt')。innerHTML=allText;
}
open(“GET”,'/result/client.txt',true);
txtFile.send(空);
您可以使用一个简单的HTML元素
它加载外部资源并在屏幕上显示它不需要js如果您在代码行前面加上4个连续的空格,引擎将不会解析它们。您应该通过将代码缩进4个空格来格式化代码。HTML可以包含img,但不能包含txt。。。或与SSI。。。但这在今天并不多见。@leonbloy——有趣——以前从未听说过!)好吧,这是正确的方式-有点忙碌,因为js的相同服务器策略。在我的例子中,我必须在服务器中创建一个特殊的php代码。当然,您可以使用HTML来实现这一点。使用
或
标记。是否可以这样做1)不在网页上实际显示,2)将内容传递到javascript(我只想将一些文本传递到javascript,而不使用任何web服务器和复杂的东西,如jquery或其他东西)@遗憾的是,无法将本地计算机上的文件传递给javascript以供使用。为此您需要一个web服务器。根据,在调用open()之前,我需要注册onreadystatechange回调。我还需要file.send()代码>。