文件上传返回未定义

时间:2019-01-03 14:53:03

标签: javascript jquery html node.js forms

首先,我是使用JavaScript的新手Web开发人员。

我正在尝试建立一个表单,用户可以在其中添加自己的图像作为其个人资料。但是,在测试代码并选择图像时,返回的值是不确定的。由于某些原因,它不确认所选文件。

这是我的代码:

HTML

<form id="pic_form" action="#" class="wizard-big" enctype="multipart/form-data">
    <h1 style="font-size:0.9vw">Image</h1>
    <fieldset>
        <div class="row">
            <div class="col-xs-12">
                <img style="height:30%; width:30%" src="img/default_pic.jpg">
                <br/><br/>
                <div class="form-group">
                    <label style="font-size:0.8vw">Change Image</label>
                    <input id="PlayerPic" name="PlayerPic" type="file" class="form-control" style="font-size:0.7vw; height:10%">
                </div>
                <div class="form-group" style="visibility: hidden">
                    <label>Player ID</label>
                    <input id="PlayerID" name="PlayerID" type="text" class="form-control" readonly>
                </div>
            </div>
        </div>
    </fieldset>
</form>

JavaScript(客户端)

$.post( "/player_pic", $("#pic_form").serialize(),

JavaScript(服务器端)

app.post('/player_pic', function(req, res) {

    console.log('Adding player picture...........................');

    console.log('Pic = ' + req.body.PlayerPic);
    console.log('ID = ' + req.body.PlayerID);

});

这些是我得到的结果:

添加播放器图片........................

图片=未定义

ID = 1532947080817

我环顾四周,无法找到解决方案,为什么当我从表单的本地文件夹中选择图像时,它以未定义的形式返回。

在这里非常感谢您的帮助:)

谢谢

1 个答案:

答案 0 :(得分:-1)

我想您需要使用config/packages/league_tactician.yaml标头进行文件传输

multipart/form-data