【发布时间】:2014-11-26 17:30:14
【问题描述】:
我有一个包含很多字段的表单,我想使用 post 方法将所有表单字段发布到服务。但我想发送整个表单对象,而不是一个一个地写一个属性。如果我尝试发布包含我所有字段 $scope.formData 的对象,它还包含内部的所有角度内容,例如错误。我需要的是字段名称和值的集合。如何以最少的编码实现这一目标?
编辑: 我最终编写了自己的函数:
function getAngularFormFields(form) {
var dictionary = { form: {} };
for (var key in form) {
if (form.hasOwnProperty(key) && !key.indexOf('$') == 0) {
dictionary.form[key] = form[key].$modelValue;
}
}
return dictionary;
}
【问题讨论】:
-
好吧,你试过什么?一种简单的方法是获取表单对象(制作副本)并删除“内部类似错误的内容”。我不认为你有办法做到这一点而不以某种方式循环。但是为什么不直接使用浏览器提供的默认 POST 呢?
-
我正在寻找能够做到这一点的内置功能。如果不需要,我不想编写循环方法。但是如果没有我会写的。