【问题标题】:post form data and show in server发布表单数据并在服务器中显示
【发布时间】:2014-04-28 17:06:06
【问题描述】:

我有一个简单的表单,我只想看看哪些字段被发送到服务器。但在服务器端,我只得到<input type="text"> 字段值。为什么服务器无法获取<select><input type="file" /> 的值?

HTML:

<form action="http://localhost:8100/" method="POST">
        <div>
            <select>
                <option value="op1" selected="selected">Option1</option>
                <option value="op2">Option2</option>
            </select>
        </div>

        <div>
            <input type="file" value="select a file"/>
        </div>

        <div>
            <label>Your Hero: </label><input type="text" name="hero" />
        </div>

        <input type="submit" value="submit" />
    </form>

服务器:

var http = require("http");

http.createServer(function(req, res) {
        if (req.method == 'POST') {
            var body = '';
            req.on('data', function (data) {
                body += data;
                console.log(body);
            });
            req.on('end', function () {
                console.log("request data complete");
            });
            res.end("post request");
        } else {
            res.end("get request");
        }

    }).listen(8100);

【问题讨论】:

    标签: html forms node.js


    【解决方案1】:

    您的selectfile input 元素缺少name 属性。您希望提交的所有表单元素都必须具有唯一的name 属性。 name 属性是当数据通过 POST 和 GET 提交时元素值的标识符。

    您可以在此处的规格中了解它:http://www.w3.org/TR/html5/forms.html#naming-form-controls:-the-name-attribute

    【讨论】:

      【解决方案2】:

      我认为您只是忘记了此表单元素中的“名称”属性。添加它,它应该可以工作。干杯

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2020-06-14
        • 1970-01-01
        • 1970-01-01
        • 2021-06-03
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多