我有一些动态生成的表单字段,我使用了jquery数组序列化,我在发布后得到了这些数据
results_English ::-value 10
results_Science ::-value 20
results_Geography ::-value 30
results_History ::-value 40
results_Drawing ::-value 50
results_Architecture ::-value 60
我已使用此代码
var dataArray = $('#er').serializeArray();
len = dataArray.length,
dataObj = {};
for (i=0; i<len; i++) {
console.log(dataArray[i].name+" ::-value "+dataArray[i].value);
var arr = dataArray[i].name;
};
我正在尝试获取以results_
开头的字段,_
之后的值成为新数组的新键,但值仍然存在。
要开始,我正在尝试grep
var r = jQuery.grep(arr, function(a){
return a == 'results_'
}).length;
但它返回0
。
如何在results_中找到值startin并使用_之后的部分创建一个新数组?
答案 0 :(得分:0)
您说“以”开头的字段“,但您正在检查完全匹配。你也有一个对象数组,所以a
是一个对象而不是一个字符串。您应该检查对象的name
属性。
var r = jQuery.grep(arr, function(a) {
return a.name.indexOf('results_') === 0;
}).length;