更改 Name: 的值,在序列化数组中的对象中
change the value of name: in an object in serialize array
我正在这样做:
var a_survey = $('#survey-1 :input').serializeArray();
$.ajax({
url: "/save_a_survey/",
type: "post",
data: a_survey,
csrfmiddlewaretoken:'{{ csrf_token }}',
});
哪个通过这个:
csrfmiddlewaretoken:6rS9oNMSJIzJw6ye8nCQZPRkjNemyMOD
form-1-student:12
form-1-behavior_type:Externalizer
form-1-surveyset:13
但我想将密钥的名称更改为:
csrfmiddlewaretoken:6rS9oNMSJIzJw6ye8nCQZPRkjNemyMOD
student:12
behavior_type:Externalizer
surveyset:13
这可能看起来是一个相当不错的黑客,但我正在处理 django 表单集并尝试一次保存它们的一部分;这听起来也像是一个黑客...
到目前为止,我已经尝试过这个:
a_survey = $('#survey-1 :input').serializeArray();
for (var i = 1; i <= a_survey.length; i++) {
a_survey[i]['name'] = a_survey[i]['name'].replace(/form-'d-/g, "");
};
但我不断得到...
TypeError: Cannot read property 'name' of undefined
感谢您的帮助
你的迭代中有一个逐一错误(JavaScript 数组从零开始)。
var a_survey = $('#survey-1 :input').serializeArray();
for (var i = 0; i < a_survey.length; i++) {
a_survey[i].name = a_survey[i].name.replace(/form-'d-/g, "");
};
<小时 />编辑:或者,您可以使用$.each()
,根据@RobG的建议:
var a_survey = $('#survey-1 :input').serializeArray();
$.each(a_survey, function(i, item) {
item.name = item.name.replace(/form-'d-/g, "");
});
相关文章:
- 将数组对象传递到struts2中的操作类
- 如何使用jquery返回php-json数组对象
- 从其名称获取javascript数组对象
- 值未与数组对象绑定
- 如何按数组/对象值的倍数过滤对象数组
- 在表中显示数组对象
- 在数组对象中分组
- 将第二个或多个数组推送到数组对象 AngularJS 中
- 重新排列 JavaScript 数组/对象
- 键上的javascript数组对象过滤器
- handontable:在不更改数据数组/对象的情况下隐藏某些列
- 用于跟踪购物车可用性的Javascript数组/对象/哈希表
- 重建有角度的java脚本数组对象
- 对JSON数组对象进行排序
- 连接与数组对象相关的文本:方式和位置
- 哪些浏览器和版本支持将常见的类数组对象直接传递到fn.apply()
- 如何使用Handlebars循环数组对象和模板
- 是否可以引用JS数组/对象中的另一个元素
- Javascript中的名称索引-数组/对象
- 数组长度不等于数组对象