我正在做两种选择的水疗网站预订系统。我正在尝试做的事,但是没用:选择日期后,下拉列表中的选择将受到限制,因为该日期每天只能选择8个值。
第一次选择[输入] :包含date
[yyyy-mm-dd] date(单击 HTML 的链接)
<div class='pt-2'>
<div class='dates'>
<input type='text' autocomplete='off' class='form-control' placeholder='Treatment date' id="reservation_date" required style='background: none; border: none; border-bottom: 1px solid black;'/>
</div>
第二选择[下拉列表] :包含treatment数据库中的treatment
列表(单击 HTML 的链接)
<div class='pt-3'>
<select id="treatment_name" style='width: 100%; background: none; border: none; border-bottom: 1px solid black; font-style: italic; color: #4E4E4E; font-family: "Helvetica Neue", "Arial"; opacity: 0.8'>
<option>Treatment Name</option>
</select>
</div>
Php代码:
$query = mysqli_query($connect, "SELECT * FROM treatments ");
if($query){
while ($row=mysqli_fetch_assoc($query)){
echo '<option value="'.$row['t_name'].'">'.$row['t_name'].' </option>';
}
}
else
echo "error";
谁能知道如何基于treatment
来限制date
?在有条件的情况下,允许用户每天(日期)仅预订8个插槽的治疗。我的意思是设置一个条件,即在一个特定的treatment
中只能选择date
8次。
我在这里的problem
是当用户选择treatment
大于8时,它将自动displaying messages
“由于您选择的日期已经满,请选择另一个日期进行预订。谢谢。”在点击提交之前。
//submit form
$("#submit").click(function(){
var customer_id= $("#customer_id").val();
var reservation_date= $("#reservation_date").val();
var reservation_time= $("#reservation_time").val();
var treatment_name= $("#treatment_name").val();
var reservation_status_id= $("#reservation_status_id").val();
var blood_thinning= $("#blood_thinning").val();
var herbs= $("#herbs").val();
var others= $("#others").val();
var infection= $("#infection").val();
var menses= $("#menses").val();
var pregnant= $("#pregnant").val();
$.ajax({
type: "POST",crossDomain: true, cache: false,
url: "booking_process.php",
data: {customer_id:customer_id,reservation_date:reservation_date,reservation_time:reservation_time,treatment_name:treatment_name,reservation_status_id:reservation_status_id,blood_thinning:blood_thinning,herbs:herbs,others:others,infection:infection,menses:menses,pregnant:pregnant},
success: function(data){
alert(data);
$('#add_booking')[0].reset();
}//data
});//ajax
});//submit
任何高级成员可以指导我如何实现吗? 任何帮助将不胜感激。
谢谢。
答案 0 :(得分:0)
第一个下拉列表不是下拉列表,而是文本输入。我的答案是基于您具有日期列表的。 制作另一个表,如date_limit或类似的东西,并在数据库中指定特定日期的限制(我不知道您的限制以什么方式工作,所以我不确定做到这一点的最佳方法。 当您生成日期选择列表时,会将该值附加到选择值。
<option value="dd/mm/Y" data-limit="4">dd/mm/Y</options>
然后在第二个下拉菜单中继续检查选择了多少个值,第一个设置的限制是什么。
如果要使用文本输入作为日期,则基本上可以执行相同的操作,但是您需要对每个用户日期输入发送查询,并获取输入日期的限制。