用javascript解析服务器端文本文件中的日期,然后在文件的另一行显示文本

用javascript解析服务器端文本文件中的日期,然后在文件的另一行显示文本,javascript,html,Javascript,Html,我的网络编程技能还不太熟练,但尽管如此,我还是试图创建一个简单的页面,通过存储在web服务器上的TXT文件显示下一个学校研讨会。TXT文件为纯文本,并列出: the presenter Day of the week, Date time the workshop is occurring Room Workshop title 演讲者 一周中的某一天,研讨会召开的日期和时间 房间 工作坊名称 文本文件重复这4个相同的字段,但具有唯一的数据,按时间顺序排列如下: Elisabeth Oliver

我的网络编程技能还不太熟练,但尽管如此,我还是试图创建一个简单的页面,通过存储在web服务器上的TXT文件显示下一个学校研讨会。TXT文件为纯文本,并列出:

the presenter Day of the week, Date time the workshop is occurring Room Workshop title 演讲者 一周中的某一天,研讨会召开的日期和时间 房间 工作坊名称 文本文件重复这4个相同的字段,但具有唯一的数据,按时间顺序排列如下:

Elisabeth Oliver Wed, Feb 13 from 9:00am-10:00am 808A Reading for Understanding: How to Get the Most Out of Your Textbook Allie Vernon Thur, Feb 14 from 2:30pm-3:30pm 808A Time Management and Achieving Personal Success Jayley Lee Tues, Feb 19 from 10:00am-11:30am 808A Got Grit? Developing an Attitude for Success 伊丽莎白·奥利弗 2月13日星期三上午9:00-10:00 808A 阅读促进理解:如何最大限度地利用课本 艾莉弗农 2月14日星期四下午2:30-3:30 808A 时间管理与个人成功 李杰利 2月19日星期二上午10:00-11:30 808A 有勇气吗?培养成功的态度 我正在尝试创建一个页面,检查当前系统日期/时间,然后运行此文本文件,查找下一个研讨会

我有一个工作页面,它获取当前时间,并从硬编码的变量列表中显示下一个研讨会,但我真的希望javascript读取研讨会TXT文件,因为这是我的源代码。下面是我的旧代码

我正在使用moment.js执行时间计算

<script src="moment.js"></script>
<SCRIPT LANGUAGE="JavaScript"> 

var d = new Date() 
var month = d.getMonth();
var dayofmonth = d.getDate();
var day = d.getDay(); 
var time = d.getHours(); 
var mins = d.getMinutes();
var year = d.getFullYear();

var d1 = new Date("February 13, 2019 9:00:00");
var d2 = new Date("February 14, 2019 14:30:00");
var d3 = new Date("February 19, 2019 10:00:00");

// Options for formatting the dates & Time
var options = {
    weekday: "long", year: "numeric", month: "long",
    day: "numeric"
};


// Array for displaying workshop into
// Workshop[date variable holding date of workshop and start time, legnth of workshop in hours, title of workshop, presenter]
var Workshop1 = [d1, 1, "Reading for Understanding: How to Get the Most Out of Your Textbook", "Elisabeth Oliver"];
var Workshop2 = [d2, 1, "Time Management and Achieving Personal Success", "Allie Vernon"];
var Workshop3 = [d3, 1.5, "Got Grit? Developing an Attitude for Success", "Jayley Lee"];

// HTML to display current workshop info on Screen
function SetDivContent() 
{
    var div=document.getElementById('date_dependent');


    if (d.getTime() <= Workshop1[0]) { // Workshop 1
            div.innerHTML=Workshop1[2] + '<br>Presented by: ' + Workshop1[3] + '<br>' + d1.toLocaleDateString("en", options) + '<br>From: ' + moment(d1).format("h:mm A") + ' - ' + moment(moment(d1).add(Workshop1[1],"h")).format("h:mm A") + '<br>Room: 808A';
        }
        else if (d.getTime() <= d2) 
    { // Workshop 2
            div.innerHTML=Workshop2[2] + '<br>Presented by: ' + Workshop2[3] + '<br>' + d2.toLocaleDateString("en", options) + '<br>From: ' + moment(d2).format("h:mm A") + ' - ' + moment(moment(d2).add(Workshop2[1],"h")).format("h:mm A") + '<br>Room: 808A';
        }
        else if (d.getTime() <= d3) { // Workshop 3
            div.innerHTML=Workshop3[2] + '<br>Presented by: ' + Workshop3[3] + '<br>' + d3.toLocaleDateString("en", options) + '<br>From: ' + moment(d3).format("h:mm A") + ' - ' + moment(moment(d3).add(Workshop3[1],"h")).format("h:mm A") + '<br>Room: 808A';
        }

}

var d=新日期()
var month=d.getMonth();
var dayofmonth=d.getDate();
var day=d.getDay();
var time=d.getHours();
var mins=d.getMinutes();
var year=d.getFullYear();
var d1=新日期(“2019年2月13日9:00:00”);
var d2=新日期(“2019年2月14日14:30:00”);
var d3=新日期(“2019年2月19日10:00:00”);
//设置日期和时间格式的选项
变量选项={
工作日:“长”,年:“数字”,月:“长”,
日期:“数字”
};
//用于将车间显示到中的阵列
//研讨会[日期变量研讨会的举行日期和开始时间,研讨会的长度(小时),研讨会名称,演示者]
var Workshop1=[d1,1,“为理解而阅读:如何最大限度地利用教科书”,“伊丽莎白·奥利弗”];
var Workshop2=[d2,1,“时间管理和实现个人成功”,“Allie Vernon”];
var Workshop3=[d3,1.5,“有勇气?培养成功的态度”,“Jayley Lee”];
//用于在屏幕上显示当前车间信息的HTML
函数SetDivContent()
{
var div=document.getElementById('date_dependent');

如果(d.getTime()假定文件位于同一目录中

  • index.html
  • textfile.txt
例如,在您的
textfile.txt

Hello World
然后在
index.html

<script>
  function readTextFile() {
    var request = new XMLHttpRequest();

    request.open("GET", "textfile.txt", true);
    request.send();

    return new Promise((resolve, reject) => {
      request.onreadystatechange = function() {
        if ( request.readyState !== 4 ) return;

        if ( this.readyState == 4 && this.status == 200 ) resolve(request.responseText)
        else reject({
          status: request.status,
          statusText: request.statusText
        });
      };
    });
  }

  readTextFile().then((response) => console.log(response)); // THIS WILL LOG "Hello World" IN THE CONSOLE
</script>

函数readTextFile(){
var request=new XMLHttpRequest();
打开(“GET”,“textfile.txt”,true);
request.send();
返回新承诺((解决、拒绝)=>{
request.onreadystatechange=函数(){
if(request.readyState!==4)返回;
如果(this.readyState==4&&this.status==200)解析(request.responseText)
否则拒绝({
状态:request.status,
statusText:request.statusText
});
};
});
}
readTextFile()。然后((响应)=>console.log(响应));//这将在控制台中记录“Hello World”
这只是你问题的一部分的解决方案。你可以以此为起点

<script>
  function readTextFile() {
    var request = new XMLHttpRequest();

    request.open("GET", "textfile.txt", true);
    request.send();

    return new Promise((resolve, reject) => {
      request.onreadystatechange = function() {
        if ( request.readyState !== 4 ) return;

        if ( this.readyState == 4 && this.status == 200 ) resolve(request.responseText)
        else reject({
          status: request.status,
          statusText: request.statusText
        });
      };
    });
  }

  readTextFile().then((response) => console.log(response)); // THIS WILL LOG "Hello World" IN THE CONSOLE
</script>