标签: ejs

在Express/EJS中,如何更改默认布局?

我不希望它是layout.ejs.

我想将我的布局设置为此特定控制器的另一个模板.

layout ejs node.js express

12
推荐指数
3
解决办法
1万
查看次数

使用EJS的HTML选择选项

我正在为我的Web应用程序进行配置,尝试将其呈现为网页.以下是我的代码的一部分.我想选择配置[0] .volume的选项.因此,如果config [0] .volume为'50',则所选选项将为'50'.代码运作良好.但我想知道."我怎样才能缩短这段代码?" 我的代码很冗长.

<select id="volume">

<option value="1" <%= config[0].volume == '1' ? 'selected' : ''%>>1</option>
<option value="5" <%= config[0].volume == '5' ? 'selected' : '' %>>5</option>
<option value="10" <%= config[0].volume == '10' ? 'selected' : '' %>>10</option>
<option value="50" <%= config[0].volume == '50' ? 'selected' : '' %>>50</option>
<option value="75" <%= config[0].volume == '75' ? 'selected' : '' %>>75</option>
<option value="100" <%= config[0].volume == '100' ? 'selected' : '' %>>100</option>

</select>
Run Code Online (Sandbox Code Playgroud)

我想大约2个小时,但没有任何结果.也许我必须使用jquery或javascript,并添加属性来拥有它,

attr('selected')... ?
Run Code Online (Sandbox Code Playgroud)

我不知道,你能帮帮我吗?

javascript jquery ejs

12
推荐指数
2
解决办法
1万
查看次数

ejs中的日期时间格式化/自定义

我在ejs中显示日期

<%= new Date();%>
Run Code Online (Sandbox Code Playgroud)

它给了我结果

2016年2月2日星期二16:02:24 GMT + 0530(IST)

但我需要表现为

2016年1月19日

我怎样才能在ejs中这样做?

ejs

12
推荐指数
3
解决办法
2万
查看次数

有没有办法稍后使用带有nodejs/express的EJS添加CSS/JS

我正在使用带有nodejs/express的EJS模板引擎,我想知道是否可以在例如index.ejs(而不是layout.ejs)中添加另一个css或js文件

layout.ejs

<!DOCTYPE html>
<html>
  <head>
    <title><%= title %></title>
    <link rel='stylesheet' href='/stylesheets/style.css' />
    <link rel='stylesheet' href='/stylesheets/smoothness/jquery-ui-1.8.14.custom.css' />
  </head>
  <body>
    <%- body %>
  </body>
</html>
Run Code Online (Sandbox Code Playgroud)

index.ejs

<h1><%= title %></h1>
<p>Welcome to <%= title %></p>
Run Code Online (Sandbox Code Playgroud)

我不想在每个模板中添加第二个css文件,只有index.ejs - 有什么方法可以做到吗?

template-engine ejs node.js express

11
推荐指数
3
解决办法
2万
查看次数

ejs包含函数无法找到带有html扩展名的模板

我的ejs引擎设置是app.js如下:

// this parse html file as ejs file
    app.engine('.html', require('ejs').__express);
    app.set('view engine', 'html');
    app.set('views', __dirname + '/view');
Run Code Online (Sandbox Code Playgroud)

我的目录是这样的:

view (folder)
  home.html
  head.html
app.js
Run Code Online (Sandbox Code Playgroud)

Home.html是这样的:

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<title>home</title>
<% include head %>
</head>

<body>

</body>
</html>
Run Code Online (Sandbox Code Playgroud)

和head.html是这样的:

<link rel="stylesheet" type="text/css" href="css/main.css">
<script type="text/javascript" src="js/jquery-1.5.js"></script>
Run Code Online (Sandbox Code Playgroud)

问题是如果扩展名为html,则不会解析文件head.html.错误说它期待ejs文件.那么include函数有问题吗?

ejs node.js express

11
推荐指数
1
解决办法
1万
查看次数

EJS - 包含时传递变量

我在后端使用带有nodejs的ejs.我想在包含时传递变量.包含标题时,传递页面标题.

index.ejs:

<% include header %>
<body> . . . </body>
<% include footer%>
Run Code Online (Sandbox Code Playgroud)

header.ejs:

<html lang="en">
<head>
    <title><%- my_tytle %></title>
</head>
Run Code Online (Sandbox Code Playgroud)

footer.ejs:

</html>
Run Code Online (Sandbox Code Playgroud)

如何传入my_titleinclude命令?

ejs

11
推荐指数
2
解决办法
1万
查看次数

Node.js,Express,EJS - 导航中当前页面上的活动类

我想在每个导航链接上呈现一个"当前"类,具体取决于我在layout.ejs模板中的哪个页面.

目前,我的快递控制器索引如下所示:

// About
exports.about = function(req, res) {
    res.render('content/about.ejs', {
        title: 'About'
    });
};
Run Code Online (Sandbox Code Playgroud)

在我的layout.ejs中,我有以下内容,我想动态呈现.

<ul class="nav" id="nav">
    <li><a href="/">Home</a></li>
    <li class="current"><a href="/about">About</a></li>
    <li><a href="/">Contact</a></li>
</ul>
Run Code Online (Sandbox Code Playgroud)

有关如何实现这一目标的任何想法?

javascript navigation ejs node.js express

11
推荐指数
1
解决办法
7302
查看次数

js脚本是否可以获取在同一文件中的EJS上下文/页面中写入的变量

正如我在标题中所写的那样,我想从同一页面中的javascript文件中写入ejs页面/文件的变量中获取值

EJS:

<% var test = 101; %>
Run Code Online (Sandbox Code Playgroud)

JS:

<script>
    var getTest = test;
</script>
Run Code Online (Sandbox Code Playgroud)

或者如果我想使用写入EJS文件的函数(带参数)并在JS上下文中使用此函数,其中参数是从JS上下文赋予函数的

EJS:

<% function fn(par){ ... } %>
Run Code Online (Sandbox Code Playgroud)

JS:

<script>
   var test = 101;
   <%>fn(test)<%> 
</script>
Run Code Online (Sandbox Code Playgroud)

javascript scope ejs

11
推荐指数
3
解决办法
3万
查看次数

ejs中的函数

我想拥有的是这样的:

app.js(节点进程,包括等为简洁而排除但使用ejs作为渲染引擎):

app.get('/', function(req, res){

    var ejsVariables = {
        title : 'ideal ejs function example',
        listData1 : {
            listTitle : 'my list',
            listItems : [
                { name : 'first item', class : 'foo' },
                { name : 'second item', class : 'bar' },
                { name : 'last item', class : 'foo' }                ]
        },
        listData2 : {
            listTitle : 'your list',
            listItems : [
                { name : 'a widget', class : 'foo' },
                { name : 'another widget', class …
Run Code Online (Sandbox Code Playgroud)

javascript ejs node.js

10
推荐指数
1
解决办法
2万
查看次数

我应该在哪里定义JS函数以在EJS模板中调用

我正在制作一个模板,我正在尝试使用express和ejs渲染模板.至于节点应用程序的标准结构,我有app.js文件,其中包含如下函数:

app.locals.getFlag = function(country) {
var flag_img_name = "";
if (country.toLowerCase() == "us") {
    flag_img_name = "flag_us16x13.gif";
}   
else if (country.toLowerCase() == "ca"){
    flag_img_name = "flag_ca16x13.gif";
}
return flag_img_name;
}
Run Code Online (Sandbox Code Playgroud)

我有some_template.ejs文件调用此函数,如下所示:

<img src="http://some_url_path/<%=getFlag(data_point[0].country_name) %>" width="16" height="14" alt="country" >
Run Code Online (Sandbox Code Playgroud)

它工作得很好.但是,我有大约15-20个这样的函数,我不想在app.js中定义所有这些函数.还有其他地方可以定义这些函数并在模板中调用它们,就像我现在一样吗?如果是,那么定义它们的方式是什么,以便它们像现在一样可以访问.

我是节点,表达和ejs的新手,并不确定不同的技术.如果有人可以为它揭开光芒,那就太好了.先感谢您.

ejs node.js express

10
推荐指数
4
解决办法
2万
查看次数

标签 统计

ejs ×10

node.js ×6

express ×5

javascript ×4

jquery ×1

layout ×1

navigation ×1

scope ×1

template-engine ×1