首页 > 解决方案 > 使用NodeJS,头部的javascript不能使用来自服务器的参数

问题描述

我正在制作一个在呈现时从服务器接收字符串参数的页面。该参数在正文中正确显示。但它在 jacascript 函数中部分显示“未捕获的 ReferenceError:最新名称未定义”。但在某种程度上,参数被正确处理并显示它的数据。

我认为我缺少非常基本的代码。但是我在浏览互联网将近 4 个小时时找不到。请帮我。

我在服务器端的 js 文件给出了这样的参数。

res.render('index', { title: 'Express', newestname:newestname });  

latestname 是字符串值。

在 ejs 文件中,它分两部分处理。

<head>
    <script type='text/javascript'>
        $(function() {
            $('#report').load(newestname);
        });
    </script>
</head>

<body>
    <div>
        <%= newestname %>
    </div>
<body>

使用 bodypart 的参数可以正常工作。但是头部的参数不起作用。错误消息如下所示。

未捕获的 ReferenceError:未定义最新名称

我试过使用 $(document).ready(function() {} 但它显示相同的错误。

如何使标题处的参数起作用?

标签: javascriptnode.jsparameters

解决方案


您必须定义“最新名称”,或者您可以直接将“<%=最新名称%>”传递给加载函数。尝试这个。

<head>
    <script type='text/javascript'>
        let newestname= "<%= newestname %>";
        $(function() {
            $('#report').load(newestname);
        });
    </script>
</head>

推荐阅读