我需要从两个下拉列表中选择两个值,例如,从第一个下拉列表中选择 1001
,从第二个下拉列表中选择 1003
。单击“添加”按钮后,我需要将这些值以及其间的值发送到 $.ajax()
方法,如下所示:1001
, 1002
和1003
。
下面是我为此使用的代码。
var s_no = "" + $("#start_num option:selected").text();
var e_no = "" + $("#end_num option:selected").text();
var diff = e_no - s_no;
var regno = 0;
for (i = 0; i <= diff; i++) {
regno = s_no;
$.ajax({
type: 'POST',
dataType: "json",
url: '<?php echo base_url('SchoolAdmin/inserthall'); ?>',
data: { regno: regno },
success: function (result) {
console.log(result);
}
});
s_no = regno + 1;
}
s_no
中的相同值将与其他值插入到数据库中。 1001
正在重复插入数据库。我需要 1002
和 1003
以及 1001
。提前致谢。
最佳答案
您需要将从 val()
返回的字符串转换为整数,以便可以对它们进行减法。另请注意,计算数字的逻辑可以整理。试试这个:
var s_no = parseInt($("#start_num option:selected").text(), 10);
var e_no = parseInt($("#end_num option:selected").text(), 10);
var diff = e_no - s_no;
for(i = 0; i <= diff; i++) {
var regno = s_no + i;
$.ajax({
type: 'POST',
dataType:"json",
url: '<?php echo base_url('SchoolAdmin/inserthall'); ?>',
data: { regno: regno },
success: function (result) {
console.log(result);
}
});
}
另请注意,最好让一个 AJAX 请求一次性发送所有 reg_no
值。
关于jquery - 在jquery循环中增加一个变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36472987/