如何从ajax中动态生成的字段发送多个数据?
由于我事先无法知道字段数,所以我使用的for循环对我来说不起作用。
$.ajax({
type: 'GET',
data:{
expectationPercentagePairId: JSON.stringify(expectationPercentagePairIds),
expectationScores: expectationScores,
for(var id in expectationPercentagePairIds){
score-${id}: $("input[name='score-'+id]")
}
},
url:'${g.createLink( controller:'review', action:'saveReview', params:[id: params.id] )}'
});
答案 0 :(得分:1)
循环在这里不起作用。您可以使用序列化传递所有表单数据,然后处理后端的数据。
$.ajax({
type: 'GET',
data:{
$('form').serialize()
},
url:'${g.createLink( controller:'review', action:'saveReview', params:[id: params.id] )}'
});
答案 1 :(得分:0)
如果动态生成的字段位于静态父元素中,您可以找到所有输入,例如$("#perantelem").find('input')
,然后您可以使用您的id(得分 - $ {id})进行过滤并生成键/值(名称: value)array或json