0

我有这个代码:

应用程序.js

var userArray = []; 

$(document).ready(function() {
    $("#signupform").submit(function(e) {
        var user = {
            name: $('#pname').val(),
            email: $('#email').val()
        };
        userArray.push(user);
        var html = new EJS({url: 'templates/usershow.ejs'}).render(user);
        var content = document.getElementById('content');
        content.innerHTML = content.innerHTML + html;
        $("#signupform").remove();   
        e.preventDefault();
    });
});

索引.html

<!doctype html>
<html lang="en">
<head>
  <meta charset="utf-8">
  <title>it IT</title>
  <link rel="stylesheet" type="text/css" href="application.css" />
  <script src="jquery.js"></script> 
  <script src="application.js"></script>
  <script type="text/javascript" src="ejs_production.js"></script>
  <!--[if lt IE 9]>
  <script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script>
  <![endif]-->
</head>
<body>
    <h1>it IT</h1>
    <div id="signup">
        <form id="signupform">
            Name: <input type="text" name="pname" id="pname"><br>
            Email: <input type="text" name="email" id="email"><br>
            <input type="submit" value="sign up">
        </form>
    </div>
    <div id="signin"></div>
    <div id="content"><h2>Name : Email</h2></div>
</body>
</html>

模板/usershow.ejs

<ul>
   <li><%= userArray[userArray.length - 1].name %> - <%= userArray[userArray.length - 1].email %></li>
</ul>

在 js 文件中,我在函数之外声明了一个数组。我试图从函数内将用户推送到数组。一切顺利,直到我刷新页面......数组也被刷新了 - 我是新手,但这似乎是一个范围问题。我试图保持数组完整,即使在页面刷新之后 - 所以我可以在文件的其他点引用它。任何帮助,将不胜感激。另外,有没有人有一个很好的链接到我可以阅读关于在 javascript 中创建会话(用于登录/注销)的地方?

4

0 回答 0