我已經創建了一個功能,供用戶選擇一個時間段,並在選定時間的基礎上獲得折扣,但現在的問題是,當用戶選擇第一個,然後選擇第二個選項的數量不斷得到扣除,而不是從原來的價格重新計算,而不是減少價格檢查按鈕是否被點擊做別的什麼也不做什麼
這裏是我工作的代碼
$(document).ready(function(e) {
\t $('.time-slot').on('click', function() {
\t \t $('.time-slot').removeClass('active1');
\t \t $(this).addClass('active1');
\t \t
\t \t var dt_time \t = $(this).attr('data-dt-time');
\t \t var time_off \t = $(this).attr('data-timeoff');
\t \t var cost \t \t = $('.price').val();
\t \t
\t \t if(time_off !== undefined) {
\t \t \t if($('.time-slot').hasClass('active1')) {
\t \t \t \t var subtr \t = parseInt(cost)/100 * parseInt(time_off);
\t \t \t \t var subtotal = parseInt(cost) - subtr;
\t \t \t \t $('.price').val(subtotal);
\t \t \t } else {
\t \t \t \t var subtr \t = parseInt(cost)/100 * parseInt(time_off);
\t \t \t \t var subtotal = parseInt(cost) + subtr;
\t \t \t \t $('.price').val(subtotal);
\t \t \t }
\t \t }
\t \t
\t });
});
li {
cursor:pointer;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<ul>
<li class="time-slot" data-dt-time="08:00" data-timeoff="10">08:00</li>
<li class="time-slot" data-dt-time="08:30" data-timeoff="15">08:30</li>
<li class="time-slot" data-dt-time="09:00" data-timeoff="10">09:00</li>
<li class="time-slot" data-dt-time="09:30" data-timeoff="20">09:30</li>
<li class="time-slot" data-dt-time="10:00" data-timeoff="10">10:00</li>
</ul>
<input type="text" class="price" value="350" />