在ejs文件中添加模态window

Add modal window in ejs file

我用node js写了一个小程序,我用ejs作为模板。在我的程序中,我计算了我想在模态 window 上显示的两个参数 'msg1' 和 'msg2'。不幸的是我不能用 ejs 做到这一点。

据我了解,您是 运行 服务器上的 .ejs 模板,而不是客户端。

<% %> 中的任何内容都作为模板的一部分运行,这意味着它正在尝试在服务器中调用 alert。这应该会失败。

你还没说 msg1msg2 是什么。如果它们是客户端变量,那么您只需要:

function alertNumber() {
    alert(msg1 + msg2)
}

这意味着您甚至不需要模板 - 它只是一个 HTML 文件。另一方面,如果 msg1msg2 是服务器端变量,则需要使用模板插入它们。这样做的一种天真的方式是这样的:

function alertNumber() {
    alert('<%- msg1 + msg2 %>')
}

这仅在 msg1 + msg2 不包含字符 '\、换行符、回车符 return 以及我可能遗漏的其他字符时有效。如果是这样,脚本可能会失败。特别是,除非 msg1msg2 来自受信任的来源,否则不要这样做,因为控制它们的人将能够将他们想要的任何 javascript 代码注入客户端。但是,如果你能保证它们是数字,那么这就不是问题。

最后但同样重要的是...您已经定义了 alertNumber。你真的用过这个功能吗?