【问题标题】:How to get the values from an Array with server.get? (JavaScript)如何使用 server.get 从数组中获取值? (JavaScript)
【发布时间】:2019-12-02 15:35:14
【问题描述】:

到目前为止,我可以使用 post-request 将查询保存到数据库中。

let database = [
    {'email': 'h@v.d', 'name': 'Vu', 'vorname': 'Hai'},
    {'email': 'm@h.d', 'name': 'Heim', 'vorname': 'Manuel'},
    {'email': 'h@v.d', 'name': 'Heinrich', 'vorname': 'Leon'},
];


server.post('/MyWebApp/mydatabase', function(req, res){         
    let p_mail = req.body.email;
    let p_name = req.body.name;
    let p_nachname = req.body.nachname;
    console.log(database);
    database.push({'email': p_mail, 'name': p_name, 'nachname': p_nachname});
    console.log(database);
});

我可以输入姓名和电子邮件并保存。

<script>

    function save() {
        let in_email = document.getElementById("mail").value;
        let in_name = document.getElementById("name").value;
        let in_nachname = document.getElementById("nachname").value;


        $.post('http://localhost:2019/MyWebApp/mydatabase',
            { 'email': in_email, 'name': in_name, 'nachname': in_nachname },

            function (data) {
                console.log('Object: ' + data);
            }

        );

    }

</script>

<table>
    <tr>
        <td>E-Mail:</td>
        <td><input type="text" size="80" id="mail" /></td> 
    </tr>
    <tr>
        <td>Vorname:</td>
        <td><input type="text" size="80" id="name" /></td> <
    </tr>
    <tr>
        <td>Nachname:</td>
        <td><input type="text" size="80" id="nachname" /></td>
    </tr>
    <tr>
        <td><input type="button" value="Ausgeben" onClick="get();" /></td>
        <td><input type="button" value="Speichern" onClick="save();" /></td>
    </tr>
</table>

所以我现在的问题是:如果我将电子邮件放入电子邮件字段并单击“发送”,我应该会得到该电子邮件的姓名和姓氏。

我不知道该怎么做...

【问题讨论】:

    标签: javascript jquery server ejs


    【解决方案1】:

    您应该在服务器文件中创建新的 GET 端点,然后您可以从客户端发送带有电子邮件作为查询参数的请求。 (https://en.wikipedia.org/wiki/Query_string)。

    此外,您应该在服务器上的此端点 GET 中创建一个逻辑。你可以看看这里: Find object by id in an array of JavaScript objects

    服务器

    server.get('/MyWebApp/getuser', function(req, res){         
        let p_mail = req.query.email;
        let user = database.find(x => x.email === p_mail);
        res.send(user);
    });
    

    客户

    function getUser() {
            let in_email = document.getElementById("mail").value;
    
            $.get("http://localhost:2019/MyWebApp/getuser", { mail: in_email });
    }
    
    

    希望这会有所帮助!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-09-24
      • 1970-01-01
      • 2012-05-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多