ejs包括点击

时间:2016-09-12 19:17:49

标签: node.js express ejs

我试图在我的node.js项目中创建动态包含在ejs页面中(使用<%- include('partials/content') %>)。 有没有办法可以为要包含的页面创建变量并在按钮单击时更改它?

1 个答案:

答案 0 :(得分:2)

我们假设您的partials/content文件包含以下内容:

<h1>Lorem ipsum dolor sit amet</h1>

名为partials/content2的文件:

<h1>consectetur adipiscing elit<h1>

您的主模板文件会使用标识为<div>的{​​{1}}包裹部分内容,并包含一个脚本文件,您可以使用result选择此<div>,这样您就可以了把它放在一个变量中。然后,您可以在按钮上注册单击处理程序。单击时,您将请求所需的模板文件并替换内容。

主要模板:

var $result = $('#result');

然后你需要在后端有一个控制器,如:

<html>
<head>
   <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.1.0/jquery.min.js"></script>
</head>
<body>
   <div id="result">
      <%- include partials/content.ejs %>
   </div>
   <button id="change">change</button>
<script>
    var $result = $('#result'); 
    $('#change').click(function() {
       $result.load('/content2');
    });
</script>
</body>
</html>