Web 表单的响应不会在控制台上的 space 之后显示任何内容

Response from Web form won't display anything after a space on the console

我 运行 遇到了另一个问题,希望有人能帮我解决这个问题。我设法从表单中提取信息并将其存储在数据库中。但我注意到,当我将数据显示到控制台时,当中间有 space 时,部分信息会被遗忘。例如,room 的 options 元素的值可以是“learning web development”。当我尝试将其显示到控制台时,它只会给我“学习”。奇怪的是,所有的单词,包括中间的 spaces 都被添加到数据库中。

 <form class="form-container"  method="POST">

            <div class="form-group">
                <label>Room</label>
                <select name="room" class="form-select" required aria-label="select example">
                {{#each room}}
                <option class="rooms" value={{this.room}}>{{this.room}}</option>
                {{/each}}
                </select>
                <label>Session</label>
                <select name="session" class="form-select" required aria-label="select example">
                {{#each room}}
                    <option class="rooms" value={{this.session_name}}>{{this.session_name}}</option>
                {{/each}}
                </select>
            </div>

            <div class="form-group">
                <label for="exampleInputPassword1">Time</label>
                <input type="time" name="count_time" class="form-control" id="exampleInputPassword1">
            </div>

            <div class="form-group">
                <label for="exampleInputPassword1">Count</label>
                <input type="number" name="room_counts" class="form-control" id="exampleInputPassword1" placeholder="Count">
            </div>

            <div class="button-container">
                  <button type="submit" class="btn btn-primary">Submit</button>
            </div>       
          
        </form>

节点js代码如下:

app.post('/count', (req,res)=>{

    console.log(req.body.session);
    console.log(req.body);
   
    res.redirect('/count');

});

这是控制台上的响应:

Learning
{
  room: 'Kenmore',
  session: 'Learning',
  count_time: '13:33',
  room_counts: '100'
}

session:学习。应该是session:学习Web开发。我想使用 session 中的值将其与数据库中的值进行比较。任何帮助将不胜感激。

解释一下

以这行为例:

<option class="rooms" value={{this.session_name}}>{{this.session_name}}</option>

如果this.session_namelearning web development那么它将变成:

<option class="rooms" value=learning web development>{{this.session_name}}</option>

value只是'learning',webdevelopment将被视为option标签的属性,如classvalue(可以看到文字的颜色)

动作

您应该在变量周围加上双引号

<option class="rooms" value="{{this.session_name}}">{{this.session_name}}</option>

会变成:

<option class="rooms" value="learning web development">{{this.session_name}}</option>