Jquery 如何在每个循环中获取数据属性?
我正在用HTML和jQuery构建一个表单,需要为Ajax请求连接各种输入字段 表单如下所示:Jquery 如何在每个循环中获取数据属性?,jquery,html,Jquery,Html,我正在用HTML和jQuery构建一个表单,需要为Ajax请求连接各种输入字段 表单如下所示: 发件人: 致: 价格: 发件人: 致: 价格: 发件人: 致: 价格: 结果:您需要再次包装该字段 $("input[data-name=formField]").change(function() { var rows = $('.row'); var result = []; var f; $.each(rows, function(index, row) { $.each(row
发件人:
致:
价格:
发件人:
致:
价格:
发件人:
致:
价格:
结果:
您需要再次包装该字段
$("input[data-name=formField]").change(function() {
var rows = $('.row');
var result = [];
var f;
$.each(rows, function(index, row) {
$.each(row, function(i, field) {
f = $(field);
rowData = {};
rowData[f.attr("data-input")] = f.val();
})
result.push(rowData);
})
$('#result').val(result);
})
你需要重新包装这个字段
$("input[data-name=formField]").change(function() {
var rows = $('.row');
var result = [];
var f;
$.each(rows, function(index, row) {
$.each(row, function(i, field) {
f = $(field);
rowData = {};
rowData[f.attr("data-input")] = f.val();
})
result.push(rowData);
})
$('#result').val(result);
})
进入行循环后,需要在formfields上使用.find()
var formFields = $(row).find("input[data-name='formField']");
然后使用rowData[$(field).attr(“数据输入”)]=$(field).val()
要分配给特定属性,我们使用$()
包装字段
最后,使用JSON.stringify(result)
请参阅下面的演示
$(“输入[data name=formField]”)。更改(函数(){
变量行=$('.row');
var结果=[];
var rowData={};
$.each(行,函数(索引,行){
rowData={};
var formFields=$(行).find(“输入[data name='formField']”);
$.each(表单字段,函数(i,字段){
rowData[$(字段).attr(“数据输入”)]=$(字段).val();
});
结果.推送(行数据);
})
$('#result').val(JSON.stringify(result));
});代码>
从:到:价格:
从:到:价格:
从:到:价格:
结果:
一旦进入行循环,就需要在formfields上使用.find()
var formFields = $(row).find("input[data-name='formField']");
然后使用rowData[$(field).attr(“数据输入”)]=$(field).val()
要分配给特定属性,我们使用$()
包装字段
最后,使用JSON.stringify(result)
请参阅下面的演示
$(“输入[data name=formField]”)。更改(函数(){
变量行=$('.row');
var结果=[];
var rowData={};
$.each(行,函数(索引,行){
rowData={};
var formFields=$(行).find(“输入[data name='formField']”);
$.each(表单字段,函数(i,字段){
rowData[$(字段).attr(“数据输入”)]=$(字段).val();
});
结果.推送(行数据);
})
$('#result').val(JSON.stringify(result));
});代码>
从:到:价格:
从:到:价格:
从:到:价格:
结果:
我原以为这样可以,但只需要最后一行输入。我不明白为什么。`var rowData={};`应该在第一个循环中。@TomBomb谢谢你,伙计,我用你的更正编辑了它。我原以为这样可以,但它只接受最后一个输入行。我不明白为什么。`var rowData={};`应该在第一个循环中。@TomBomb谢谢你,伙计,我用你的更正编辑了它。