serialize数组返回一个空数组

时间:2014-01-23 21:26:07

标签: forms angularjs jquery

我正在尝试在我的函数中获取一些表单数据但由于某种原因,当我尝试在其上运行函数.serializeArray()时,我的fom返回一个空数组。我已经检查过,以确保它的输入元素有一个名称我只是无法弄清楚为什么会发生这种情况

这是我的表格

 <form id="uploadForm"  name="form" action="{{nodeSocketUrl}}/upload?tenant=qa&envelope=true" method="POST" enctype="multipart/form-data" class="forms"  style="left:15px">
                <fieldset class="units-row">
                    <h3>Upload A Presentation</h3>
                    <label for="presentationFileUpload">Select a .ppt, .pptx, .pdf</label>
                        <input type="file" id="presentationFileUpload" name="presentationFile" onchange="angular.element(this).scope().onFileSelect(this)"/>
                    <hr>
                    <input type="submit" id="fileUploadBtn" class="btn btn-primary disabled" value="Upload" ng-click="uploadFile($event)" name="upload">
                </fieldset>
            </form>

这是我的功能,我正在努力从

获取表单数据
 $scope.uploadFile = function(e) {
            e.preventDefault();
            //$scope.form.preventDefault();
            var dCheck = $('input[type="file"]').val();
                console.log(e.currentTarget);
                var form = $('#uploadForm').serializeArray();
                console.log(form);
}

form返回一个空数组,任何有关这方面的帮助都是适用的

1 个答案:

答案 0 :(得分:0)

为什么不以纯粹的角度思考?

使用可以使用

<input type="file" ng-model="filePath">

然后,在$ scope.filePath

中获取文件名