【发布时间】:2021-11-13 09:25:33
【问题描述】:
我正在遍历一些复选框并为每个选中的复选框执行 .ajax 调用。问题是每个复选框的名称属性可能是重复的。所以我只想为具有唯一名称属性的复选框设置 .ajax。
这是我的脚本
var elements = $("input:checkbox:checked")
var i = 0;
doLoop();
function doLoop() {
if ( i >= elements.length ) {
return;
}
// To get the element we are up to: $(elements[i])
let e = $(elements[i]);
var id = e.attr('name');
var val = e.val();
$.ajax({
async : false,
url:"import.php",
method:"POST",
data:{id:id, val:val},
success:function(data) {
//do some action
i++
doLoop()
}
});
}
我试图在这里找到一些类似的主题,但没有成功。
如果我选中了以下复选框
<input type="checkbox" class="form-check-input selected-checkbox" value="some text 1" name="smalltalk">
<input type="checkbox" class="form-check-input selected-checkbox" value="some text 2" name="smalltalk">
<input type="checkbox" class="form-check-input selected-checkbox" value="some text 3" name="smalltalk">
<input type="checkbox" class="form-check-input selected-checkbox" value="some text 4" name="smalltalk">
每个名称属性 smalltalk 应该只调用一次,而不是 4 次 .ajax 调用。
【问题讨论】: