Javascript jQuery将数据从映射函数传递到输入和span

Javascript jQuery将数据从映射函数传递到输入和span,javascript,jquery,html,Javascript,Jquery,Html,我有很多复选框。我想从中获取值并将其传递给span和hidden input。当我点击一个复选框时,它工作正常。但当我单击多个复选框时,它只传递最后一个值。发生了什么?请帮帮我。还有其他问题。使用input或textarea存储多个值是否合适 函数t(){ $('input[type=“checkbox”]:checked').map(函数(){ var dataAttr=$(this.attr('name'); var dataAttrVal=$(this.val(); $('input[n

我有很多复选框。我想从中获取值并将其传递给span和hidden input。当我点击一个复选框时,它工作正常。但当我单击多个复选框时,它只传递最后一个值。发生了什么?请帮帮我。还有其他问题。使用input或textarea存储多个值是否合适

函数t(){
$('input[type=“checkbox”]:checked').map(函数(){
var dataAttr=$(this.attr('name');
var dataAttrVal=$(this.val();
$('input[name=“”+dataAttr+'-value“]).val(dataAttrVal);
$('#summary'+dataAttr.html(dataAttrVal);
console.log(dataAttr);
console.log(dataAttrVal);
}).get().join();
};   
$('input[type=“checkbox”]”)。在('click',function()上{
t();
});

大蒜
塔巴斯科

番茄 马铃薯
当您使用
.html()
方法时,基本上覆盖了所有内容。您可以替换该行:

$('#summary_' + dataAttr).html(dataAttrVal);
与:

或者,您可以使用
.append()
方法添加到现有值:

$('#summary_' + dataAttr).append(dataAttrVal);
这是问题的答案,但代码中还有许多其他问题需要解决。我会让你自己探索,如果你遇到一些困难,发布一个新的答案,我们会帮助你


至于第二个问题:使用input或textarea存储多个值是否合适?一般来说,这不是一个好主意,但在某些情况下也可以。我们需要了解您的具体情况和要求,以便提供良好的建议。

我有一些带有复选框的表格。我想将值传递给表单中的隐藏输入,然后再传递表单。你在我的代码中看到了什么问题?选择我给你的选项之一,更新你的代码,然后运行它,看看它是否能按你想要的方式工作。如果你发现你想表现得不同,那么这些就是问题所在。试着解决它们,如果你遇到一些困难,把它们贴在一个新的问题上,我们会帮助你的。我明白了。但是你的代码工作完美无瑕!也许有一件事需要解决,将数据传递给texarea,但我认为我可以自己解决。谢谢好的,太好了!祝你好运
$('#summary_' + dataAttr).append(dataAttrVal);