首页 > 解决方案 > 仅当表单字段不为空时才输入数组

问题描述

我正在尝试使用 mongoose 和 express/ejs 在 MongoDB 上编辑一个数据库项目。我得到了编辑表单,我可以在其中正确地将新条目添加到数组中,但是在提交时将空输入字段添加到数组中时遇到了问题。有人可以推荐一种创建不会提交空输入字段的编辑表单的好方法吗?

<div class="uk-margin">
    <label class="uk-form-label" for="form-horizontal-text">Tag</label>
    <% project.tag.forEach(function(i, el) { %>
        <div class="uk-form-controls">
            <input class="uk-input" type="text" name="project[tag][<%= el %>]" value="<%= project.tag[el] %>">
        </div>
    <% });%>
    <input class="uk-input" type="text" name="project[tag][<%= project.tag.length %>]" placeholder="project[tag][<%= project.tag.length %>]">
</div>

当我提交表单时会发生什么,空输入字段将在数组中添加一个新条目。

// before form submission
project.tag
   [0] HTML
   [1] CSS

//after form submission
project.tag
   [0] HTML
   [1] CSS
   [2]

标签: arraysmongodbformsexpressejs

解决方案


推荐阅读