我正在使用AngularJS和angular-summernote作为编辑。 我的HTML:
{{msg}}
<form id="sampleForm" ng-submit="sendFormData()" enctype="multipart/form-data">
<label>Text:</label>
<summernote height="300" ng-model="summerNoteText" on-image-upload="imageUpload(files)"></summernote><br><br>
<label>Text box:</label>
<input type="text" name="normaltext">
<input type="hidden" name="summernotetext" value="{{summerNoteText}}">
<button type="submit">
Submit
</button>
</form>
此页面的控制器:
'use strict';
angular.module('postTestbench')
.controller('MainFormController', ['$scope', function($scope) {
$scope.msg = "submit nigga";
$scope.imageUpload = function (files) {
var data = new FormData($('form')[0]);
data.append('file', files[0]);
console.log(data);
};
}]);
你能告诉我这里有什么问题吗?我搜索过jquery和开发人员mozilla的文档,他们建议使用相同的代码。
我只想从summernote上传图片,并希望从服务器获取图片网址, 但FormData对象数据显示为空。
更新
配置文件,我将控制器分配给此页面:
'use strict';
angular.module('postTestbench', ['ngRoute', 'summernote'])
.config(function($routeProvider) {
$routeProvider
.when('/', {
templateUrl: 'pages/sampleForm.html',
controller: 'MainFormController'
})
.otherwise({
redirectTo: '/'
})
})
;
答案 0 :(得分:0)
也许您的data
不为空,只需通过formData.entries
正确检查。
FormData.entries()方法返回一个迭代器,允许遍历此对象中包含的所有键/值对。每对的关键是USVString对象;值USVString或Blob。
以下是检查表单数据的方法:
var data = new FormData($('form')[0]);
data.append('file', files[0]);
for (var [key, value] of data.entries()) {
console.log(key, value);
}