Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/77.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何向其他静态页面添加一些简单的动态元素?_Javascript_Jquery - Fatal编程技术网

Javascript 如何向其他静态页面添加一些简单的动态元素?

Javascript 如何向其他静态页面添加一些简单的动态元素?,javascript,jquery,Javascript,Jquery,我正在改造一个允许预订每年举办的活动的网站。每个活动都有自己的页面,目前完全是静态的:每个页面由标题、描述和按地点排序的日期列表组成。每年当新的日期可用时,必须有人介入并手动更改每个日期的HTML,这显然是一项艰巨的任务 我想通过一个CSV文件来自动化这个过程,该文件存储日期(可以添加到零碎文件中),然后页面在加载时从那里获取相关日期。我没有服务器端方面的经验,但我对jQuery有一点了解,我觉得我应该能够用AJAX或类似的工具来实现这一点,但是如何实现呢?最简单的方法是使用PHP和mySQL数

我正在改造一个允许预订每年举办的活动的网站。每个活动都有自己的页面,目前完全是静态的:每个页面由标题、描述和按地点排序的日期列表组成。每年当新的日期可用时,必须有人介入并手动更改每个日期的HTML,这显然是一项艰巨的任务


我想通过一个CSV文件来自动化这个过程,该文件存储日期(可以添加到零碎文件中),然后页面在加载时从那里获取相关日期。我没有服务器端方面的经验,但我对jQuery有一点了解,我觉得我应该能够用AJAX或类似的工具来实现这一点,但是如何实现呢?

最简单的方法是使用PHP和mySQL数据库。您可以使用CSV文件添加/覆盖数据库,但从长远来看,您最好开发一个简单的输入表单来更新数据库,而不是使用CSV文件手动覆盖/更新mysql数据库。

最简单的方法是使用PHP和mysql数据库。您可以使用CSV文件添加/覆盖数据库,但从长远来看,您最好开发一个简单的输入表单来更新数据库,而不是手动覆盖/更新mysql数据库,使用CSV文件。

Ajax是一种在客户端脚本和服务器端脚本之间进行对话的技术。所以为了使用它,你必须学习一些服务器端的东西。JQuery是一个客户端脚本,这意味着它只在浏览器的客户端机器上运行


我建议您从php开始学习,它更易于学习和使用。只要读取一个文件就可以轻松地学习。

Ajax是一种技术,它可以在客户端脚本和服务器端脚本之间进行对话。所以为了使用它,你必须学习一些服务器端的东西。JQuery是一个客户端脚本,这意味着它只在浏览器的客户端机器上运行


我建议您从php开始学习,它更易于学习和使用。只要阅读一个文件就可以轻松地学习。

你不需要开始学习PHP来做这么简单的事情。如果您对jQuery稍有了解,只需将JSON文件添加到您的服务器,例如使用以下结构的
events.JSON

[
  {
     "event": "Event name",
     "description": "description of the event",
     "dates": [
       {
         "date": "20131028",
         "place": "Dublin"
       }, {
         "date": "20131030",
         "place": "London"
       }
     ]
   }, {
       ... another event here with the same structure...
   }
]
使用
jquery.get
,使用一些模板库(例如
下划线
),并在页面内制作简单模板以显示事件和详细信息。最后,您将只有两个页面(或者可能只有一个页面),
home.html
用于显示事件列表,而
event.html
用于显示有关事件的详细信息


现在编辑
events.json
在主页和详细信息页面上添加和更改事件。这只是一个粗略的例子,它需要根据您的需求进行定制。

您不需要开始学习PHP来做这么简单的事情。如果您对jQuery稍有了解,只需将JSON文件添加到您的服务器,例如使用以下结构的
events.JSON

[
  {
     "event": "Event name",
     "description": "description of the event",
     "dates": [
       {
         "date": "20131028",
         "place": "Dublin"
       }, {
         "date": "20131030",
         "place": "London"
       }
     ]
   }, {
       ... another event here with the same structure...
   }
]
使用
jquery.get
,使用一些模板库(例如
下划线
),并在页面内制作简单模板以显示事件和详细信息。最后,您将只有两个页面(或者可能只有一个页面),
home.html
用于显示事件列表,而
event.html
用于显示有关事件的详细信息


现在编辑
events.json
在主页和详细信息页面上添加和更改事件。这只是一个粗略的例子,需要根据您的要求进行定制。

我认为ivoszz的想法是您最好的想法。如果你想得到一个数据库和PHP,你需要一种方法将你的数据放入数据库本身,这将打开一个全新的蠕虫病毒罐。当然,数据库+服务器端前端是行业标准,但我觉得它对于您的要求来说太大了

当从简单的文本文件中读取JSON时,更容易学习如何使用jQuery显示JSON。您只需要编写此代码一次

然后,无论何时发生更改,都可以使用简单的工作流:使用Excel以预先记录的格式输入事件。然后将Excel文件导出为.csv。使用一个小程序读取CSV并将其序列化为JSON。将输出复制到服务器上的预定位置。一切都准备好了

如果其他人在你不在的时候需要更新网站,他们只需要Excel、转换工具(很小)和服务器密码。我把转换工具的代码贴在这个答案的末尾

或者,您可以使用该代码创建ASP.NETWebForms项目。您可以创建一个.aspx页面并使用服务器端代码在其上显示数据,而不是序列化代码创建的对象。然而,这也有一些缺点

  • .NETWebForms的学习曲线比JavaScript更陡峭,生成的代码可能会使用服务器端控件,除非您知道如何正确使用CSS,否则很难使用CSS
  • 如果您使用的是便宜的托管软件包,而不是您自己的服务器,则必须确保提供商的服务器上有所需的.net版本。此外,由于.NETWeb项目中通常包含的所有库,它可能会占用更多的空间
  • 如果输入数据的结构从未改变,您可以编译转换器一次,并开始将其视为黑盒。对内容显示方式的任何更改都可以在JSON读取代码中进行,并直接在浏览器中进行调试。对于.net解决方案,您必须随时安装Visual Studio
  • .net webforms不是一项经得起未来考验的技能。微软创造了一种新的、更方便的网络技术.NETMVC,我不建议启动lea