gpt4 book ai didi

javascript - 将多个参数传递给 jQuery 函数

转载 作者:塔克拉玛干 更新时间:2023-11-02 22:20:29 28 4
gpt4 key购买 nike

我有一个函数,它从各种输入(多个值)获取数据并填充到一个表中。

这是 jquery 片段:

var row =1   
$("input[name='product_id[]']").each(function() {
$rows[row].cells[0].innerText = $(this).val();
row = row+1;
});

row=1;
$("input[name='product_name[]']").each(function() {
$rows[row].cells[1].innerText = $(this).val();
row = row+1;
});

row=1;
$("input[name='manufacturer[]']").each(function() {
$rows[row].cells[2].innerText = $(this).val();
row = row+1;
});

row=1;
$("input[name='composition[]']").each(function() {
$rows[row].cells[3].innerText = $(this).val();
row = row+1;
});

我想知道是否可以将多个迭代器组合成一个迭代器?

谢谢基兰

最佳答案

您可以通过逗号加入选择器:

$("input[name='product_id[]'], input[name='product_name[]'], input[name='manufacturer[]'], input[name='composition[]']")
.each(function() {
// ...
});

为了更 DRY,使用数组:

const selectorStr = ['product_id', 'product_name', 'manufacturer', 'composition']
.map(str => `input[name='${str}[]']`)
.join(',');
$(selectorStr).each(function() {
// ...
});

如果您需要 row 在除第一次迭代之外的所有迭代中都为 1,则:

['product_id', 'product_name', 'manufacturer', 'composition']
.forEach((str, i) => {
if (i !== 0) {
row = 1;
}
$(`input[name='${str}[]']`).each(function(){
// etc
});
});

关于javascript - 将多个参数传递给 jQuery 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55016556/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com