第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

購物車中的下拉數(shù)量菜單

購物車中的下拉數(shù)量菜單

PHP
眼眸繁星 2023-04-02 10:30:04
更新:如果有人正在閱讀本文,請在我談論“動態(tài)最大數(shù)量”時忽略該片段,因為它沒有任何意義。我實際上并沒有添加新的數(shù)量,而是使用從下拉菜單中選擇的新數(shù)字更新它,所以$i <= $dynamic_max它應該是$i = 50,因此這個代碼:$static_max = 50; $dynamic_max = $static_max - $value['item_quantity'];已經過時了。它與我遇到的問題和給出的解決方案沒有直接關系,但它使代碼更清晰。更新結束在列出產品的頁面上,您使用下拉菜單選擇了數(shù)量。您單擊“添加到購物籃”,產品將發(fā)送到下一頁 (basket.php),您可以在該頁面再次獲得使用下拉菜單更改數(shù)量的選項。我的問題是,當您單擊下拉菜單時,您會在數(shù)字列表的最頂部看到當前選擇的數(shù)量,然后是可以更新數(shù)量的數(shù)字范圍。更新數(shù)量所依據(jù)的數(shù)字范圍是動態(tài)的,這意味著它取決于第一步選擇的數(shù)量??偪捎脭?shù)量為 50,因此當您選擇 40 時,在下一頁 (basket.php) 上您將僅看到 0 到 10 之間的范圍(其中 0 用作“刪除”),當前選擇的數(shù)字位于頂部列表。我不希望當前選擇的產品數(shù)量顯示在下拉菜單的頂部,我只想要您更新數(shù)量所依據(jù)的可用數(shù)字范圍。我可以用 PHP 來做還是需要用 JavaScript 來操作 DOM?我在這里發(fā)布我的代碼,沒有顯示添加產品的表格的其他部分(產品名稱、總數(shù)等),它只是<select>標簽。我現(xiàn)在有兩個<option>標簽塊,一個用于當前選擇的數(shù)量,另一個使用 for 循環(huán)呈現(xiàn),以顯示您修改數(shù)量的可能數(shù)字范圍。我一直試圖只使用一個<option>標簽塊和一個“if”語句,但已經運行了好幾次進入無限循環(huán),所以現(xiàn)在下面是唯一的“工作”版本。<select><?php// Quantity added to the basket:                        if (isset($value['item_quantity'])) {?><option value="<?php echo $value['item_quantity']; ?>"><?php echo $value['item_quantity']; ?></option><?php}?><?php// Quantity option minus what has been already added to the basket:$static_max = 50; $dynamic_max = $static_max - $value['item_quantity'];for ($i = 0; $i <= $dynamic_max; $i++) {?><option value="<?php echo $i; ?>"><?php echo $i ;?></option>
查看完整描述

2 回答

?
森欄

TA貢獻1810條經驗 獲得超5個贊

當Select-box打開時,即可在關閉時再次顯示默認值時,您只需在Select框中隱藏該選項。


演示代碼:


<select>

  <!--hidden first option -->

  <option value="10" selected="selected" hidden>10</option>

  <option value="0">0</option>

  <option value="1">1</option>

  <option value="2">2</option>

  <option value="3">3</option>

  <option value="4">4</option>

  <option value="5">5</option>

</select>

使用 jquery:


$(document).ready(function() {

  //getting first optino

  var first = $('#myselect').find('option').first();

  //when activated

  $('#myselect').on('focus', function(e) {

    first.hide(); //hide the first option

  }).on('blur', function(e) {

    //if value select is equal show the first option

    if ($(this).val() == first.val()) {

      //showing the same

      first.show();

    }

  });

});

<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>



<select id="myselect">

  <option value="10" selected="selected">10</option>

  <option value="0">0</option>

  <option value="1">1</option>

  <option value="2">2</option>

  <option value="3">3</option>

  <option value="4">4</option>

  <option value="5">5</option>

</select>


查看完整回答
反對 回復 2023-04-02
?
慕田峪9158850

TA貢獻1794條經驗 獲得超7個贊

不過,不需要 JavaScript,只需純 HTML。我所要做的就是你所做的:將全局屬性“隱藏”添加到“選項”標簽:

<option value="<?php echo $value['item_quantity']; ?>" hidden><?php echo $value['item_quantity']; ?>


查看完整回答
反對 回復 2023-04-02
  • 2 回答
  • 0 關注
  • 125 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號