【发布时间】:2020-04-02 17:05:24
【问题描述】:
我想格式化从 ajax 请求返回的数据,以将按钮的状态更改为禁用。当有人从日期选择器中选择日期时发送请求。
它以字符串形式返回包含时间的数据对象数组。我想检查每个时间值并禁用具有相关时间的按钮。我使用了引导单选切换按钮组。
如何通过读取 ajax 检索数组来做到这一点?
这是我的 ajax 代码,
const $datepicker = $('#date').datepicker({
format: 'yyyy-mm-dd'
});
$datepicker.on('changeDate', function(e) {
$.ajax({
type: "POST",
url: '/process_date',
data: {
date: convert(e.date.toString()),
},
success: function(result) {
console.log(result);
},
error: function (error) {
console.log(error);
}
});
function convert(str) {
var date = new Date(str),
month = ("0" + (date.getMonth()+1)).slice(-2),
day = ("0" + date.getDate()).slice(-2);
return [ date.getFullYear(), month, day ].join("-");
}
});
console.log 输出
我想根据 ajax 结果禁用状态的按钮(如上图)
` 08:00 上午 08:30 上午 09:00 上午 上午 09:30 10:00 AM 上午 10:30 11:00 AM
<label class="btn btn-outline-primary">
<input type="radio" name="timebtn" id="8" autocomplete="off" value="11:30AM"> 11:30 am
</label>
<label class="btn btn-outline-primary">
<input type="radio" name="timebtn" id="9" autocomplete="off" value="12:00AM"> 12:00 am
</label>
<label class="btn btn-outline-primary">
<input type="radio" name="timebtn" id="10" autocomplete="off" value="12:30PM"> 12:30 pm
</label>
<label class="btn btn-outline-primary">
<input type="radio" name="timebtn" id="11" autocomplete="off" value="11:00PM"> 01:00 pm
</label>
<label class="btn btn-outline-primary">
<input type="radio" name="timebtn" id="12" autocomplete="off" value="01:30PM"> 01:30 pm
</label>
<label class="btn btn-outline-primary">
<input type="radio" name="timebtn" id="13" autocomplete="off" value="02:00PM"> 02:00 pm
</label>
<label class="btn btn-outline-primary">
<input type="radio" name="timebtn" id="14" autocomplete="off" value="02:30PM"> 02:30 pm
</label>
<label class="btn btn-outline-primary">
<input type="radio" name="timebtn" id="15" autocomplete="off" value="03:00PM"> 03:00 pm
</label>
<label class="btn btn-outline-primary">
<input type="radio" name="timebtn" id="16" autocomplete="off" value="03:30PM"> 03:30 pm
</label>
<label class="btn btn-outline-primary">
<input type="radio" name="timebtn" id="17" autocomplete="off" value="04:00PM"> 04:00 pm
</label>
<label class="btn btn-outline-primary">
<input type="radio" name="timebtn" id="18" autocomplete="off" value="04:30PM"> 04:30 pm
</label>
<label class="btn btn-outline-primary">
<input type="radio" name="timebtn" id="19" autocomplete="off" value="05:00PM"> 05:00 pm
</label>
<label class="btn btn-outline-primary">
<input type="radio" name="timebtn" id="20" autocomplete="off" value="05:30PM"> 05:30 pm
</label>
<label class="btn btn-outline-primary">
<input type="radio" name="timebtn" id="21" autocomplete="off" value="06:00PM"> 06:00 pm
</label>
<label class="btn btn-outline-primary">
<input type="radio" name="timebtn" id="22" autocomplete="off" value="06:30PM"> 06:30 pm
</label>
<label class="btn btn-outline-primary">
<input type="radio" name="timebtn" id="23" autocomplete="off" value="07:00PM"> 07:00 pm
</label>
<label class="btn btn-outline-primary">
<input type="radio" name="timebtn" id="24" autocomplete="off" value="07:30PM"> 07:30 pm
</label>
<label class="btn btn-outline-primary">
<input type="radio" name="timebtn" id="25" autocomplete="off" value="08:00PM"> 08:00 pm
</label>
<label class="btn btn-outline-primary">
<input type="radio" name="timebtn" id="26" autocomplete="off" value="08:30PM"> 08:30 pm
</label>
</div>
</div>`
我也想知道,如何使用 jquery 更改按钮状态。 请帮我。提前致谢。
【问题讨论】:
-
您的代码图像的格式很差,因为它们难以复制。
-
如何将其格式化为更好的方式?
-
复制粘贴你的JS代码,编辑起来就方便了。
-
function displaytime(data){ if(data[0].time == "09:30AM"){ $('#timeslots').find('#4').attr("disabled", true); }我试过这段代码来禁用按钮,但它不起作用?有什么问题? -
将 JS 代码复制并粘贴到您作为图像发布的位置。然后直接发布到问题中
标签: javascript php html ajax laravel