我在表单上有一组输入复选框,如下所示:
<input type="checkbox" value=""><span value="Atlanta">Atlanta</span>
<input type="checkbox" value=""><span value="Charleston">Charleston</span>
<input type="checkbox" value=""><span value="Chicago">Chicago</span> and etc.
以上是由于运行 $dataTable.ajax.reload()
,出于某种原因,这会删除我表单中复选框的值。这些复选框不是硬编码的,而是动态生成的。
我意识到我可以刷新页面并取回所有值,而不是执行以下操作,但我想看看是否有另一种方法来执行我在下面尝试执行的操作。
任何人,我获取了每个复选框的跨度文本,将其转换为一个数组并将其命名为 spanarr
。我还将输入复选框变成了一个数组,称为 emergcheck
。
var emergspanarr = $('#emergencyForm span').toArray();
var spanarr = [];
var emergcheck = $('#emergencyForm input[type="checkbox"]');
emergspanarr.map(function(item){
spanarr.push(item.innerHTML.trim());
});
我正在尝试将一个跨度值(来自 spanarr)插入每个输入复选框(来自 emergcheck)。
到目前为止我所拥有的:
for (var j = 0; j < emergcheck.length; j++){
for (var k = 0; k < spanarr.length; k++){
emergcheck.attr("value", function(i, val){
return val + spanarr[k];
})
}
}
但它正在产生这个:
<input value="AtlantaCharlestonChicagoHouston (Sales)Houston (Terminal)Long BeachMarseillesMiamiMontreal....Santa Ana SavannahSeattleSecaucusTorontoVancouverAtlantaCharlestonChicagoHouston (Sales)Houston (Terminal)Long BeachMarseillesMiamiMontrealSanta Ana .....Santa AnaSavannahSeattleSecaucusTorontoVancouver" type="checkbox"><span value="Atlanta">Atlanta</span>
<input value="AtlantaCharlestonChicagoHouston (Sales)Houston (Terminal)Long BeachMarseillesMiamiMontreal....Santa Ana SavannahSeattleSecaucusTorontoVancouverAtlantaCharlestonChicagoHouston (Sales)Houston (Terminal)Long BeachMarseillesMiamiMontrealSanta Ana .....Santa AnaSavannahSeattleSecaucusTorontoVancouver" type="checkbox"><span value="Charleston">Charleston</span> and etc.
我希望它是这样的:
<input type="checkbox" value="Atlanta"><span value="Atlanta">Atlanta</span>
<input type="checkbox" value="Charleston"><span value="Charleston">Charleston</span>
<input type="checkbox" value="Chicago"><span value="Chicago">Chicago</span
我觉得我很亲近。我错过了什么?需要另一双眼睛。谢谢,
最佳答案
只需尝试使用以下代码更改代码 -
JS 代码 -
for (var j = 0; j < emergcheck.length; j++){
emergcheck.eq(j).val(spanarr[j]);
}
也许它能帮到你。
关于javascript - 使用另一个值数组设置复选框值数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52279425/