1

こんにちは、私は html 選択リストを持っています。選択された数値が特定の値$content->numberになり、最大値が $content->product_type->stock_25 未満の場合は 5、5 より大きい場合は 5 になります。

今私が持っています:

<select class="number" name="number">
    <? $max = $content->product_type->stock_2 > 5 ? 5 : $content->product_type->sale_stock; ?>
        <option value="<?= $content->number ?>"><?= $content->number; ?> </option>                      
    <? for ($i = 1; $i <= $max; $i++):?>                        
        <option <?php if($content->product_type->stock_2 == $i) echo 'selected="selected"' ;?> value="<?= $i ?>"><?= $i; ?></option>            
    <? endfor; ?>
</select>

しかし、選択した値の2倍が表示されます$content->number。私はどこかで間違っていると確信しています。

助言がありますか?ありがとう!

4

1 に答える 1

0

あなたがやりたいことを正しく理解できたかどうかわかりませんが、これを試してください:

<select class="number" name="number">
    <? $max = $content->product_type->stock_2 > 5 ? 5 : $content->product_type->sale_stock; ?>
        <option value="<?= $content->number ?>"><?= $content->number; ?> </option>     
    <? for ($i = 1; $i <= $max; $i++):?>
        <? if ($i != $content->number): ?>                        
            <option <?php if($content->product_type->stock_2 == $i) echo 'selected="selected"' ;?> value="<?= $i ?>"><?= $i; ?></option> 
        <? endif; ?>           
    <? endfor; ?>
</select>
于 2011-04-29T08:17:08.897 に答える