我需要从两个下拉列表中选择两个值,例如,第一个下拉列表中的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
。提前谢谢。
答案 0 :(得分:2)
您需要将从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
值会更好。
答案 1 :(得分:1)
您发送的值regno
已初始化为基值s_no
。
regno=s_no;
但是你需要添加计数器变量
regno=s_no + i;
答案 2 :(得分:1)
另外,放
会不会更好#two, #three, #four {
display: none;
}
在for循环顶部的分配中?
答案 3 :(得分:1)
var checked = $("input:checked");
checked.each(function(index) {
var $this = $(this);
var id_bookslot = data + index + 1; // <== Using the index here
var treatment_type = $this.closest("div").attr("id");
var id_treatment = $this.attr("class");
$.post("include/get_booking.php?insert", {
id_bookslot: index,
id_treatment: id_treatment,
treatment_type: treatment_type
}``
);
});