javascript - 使用 Node JS 将特定名称的多个表单输入保存到一个数组中(npm 表单)

标签 javascript arrays node.js express

在完成我想象中相当简单的任务时,我遇到了相当大的麻烦。我已经浏览过SO和各种文档,尽管我尝试的任何东西似乎都不起作用,因此我想在这里发布。

我想做的是处理我的html表单(通过JADE模板化),并将特定输入(name =“ListContent []”)中的所有数据保存到一个单一数组中,每个数组中都有一个值输入。我需要采用这种方法,因为 listContent 输入的数量是动态的,而且我不知道需要处理多少个。

我的表单看起来像这样:

<form method='post'>
    <input name='listTitle'></br>
    <input name='listDescription'></br>
    <input name='listContent[]'></br>
    <input name='listContent[]'></br>
    ...
    ...
    <input name='listContent[]'></br>
    <input name='listContent[]'></br>
    <input name='listContent[]'></br>

    <button type='button' onClick='addInput('listContent');'>
    <button type='submit'>
</form>

这被渲染为这样的形式; enter image description here

我能够检索 listName 和 listDescription 的 POST 值,如下所示,尽管我不知道如何处理 listContent 并将所有输入保存到数组中,如下所示:

“{'第1行','第2行','第3行'}”

var listName = form.data.listName;  // Works
var description = form.data.listDescription;  // Works 
var contentRaw = form.data.listContent;  // Just returns blank

如有任何建议,我们将不胜感激。谢谢!

编辑: 我正在使用 npm 表单( https://www.npmjs.com/package/forms )来解析/处理我的表单数据。我定义的表单架构如下:

var simpleNewListForm = forms.create({
    listToken: forms.fields.string({
        required:true
    }),
    listName: forms.fields.string({
        required: true
    }),
    listDescription: forms.fields.string({
        required: true
    }),
    listContent: forms.fields.array(),
});

最佳答案

我发现您在创建表单时使用 listContents ,但在解析表单后访问它时使用 listContent 。当我尝试使用您显示的相同代码生成表单时,listContents 的输入名称是生成的 HTML 表单中的 listContents 本身。

关于javascript - 使用 Node JS 将特定名称的多个表单输入保存到一个数组中(npm 表单),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28822954/

相关文章:

javascript - 向 onCreate 用户 firebase 云函数添加自定义声明

node.js - 错误 : ENOENT, 打开 favicon.ico

javascript - 返回一个值而不将其存储到变量中是否被认为是不好的做法?

javascript - 我连续有三列,但是当我将值放入第一列时,它会自动转到所有其他两列

arrays - 如何在 Swift 中使用 NSCoder 对 CGPoints 数组进行编码?

javascript - 与 apply 调用相关的问题

javascript - "prevent this page from creating additional dialogs"的规则

javascript - 如何在测试之间重置 redux-test-utils 存储

javascript - Google 条形图无法更改单个条形图的颜色

node.js - 需要相同 peerDependency 的多个版本