选择后如何自动显示价格

问题描述

这是我的代码示例:

<select name="codethings"id="products">
<option value="0">--choose--</option>
<?PHP 
   include 'config.PHP';
   $sql="select * from thing where status='S01'";
   $call=MysqLi_query($connect,$sql);
while($data=MysqLi_fetch_array($call)){ ?>
<option value="<?PHP echo $data['codethings']; ?>" data-price="<?PHP echo ['price']; 
? >" ><?PHP echo $data['codethings'];?>-<?PHP echo $data['namet'];?>(<?PHP echo $data['price']; ?>)</option>
    <?PHP } ?>
</select>
<br>

价格:

<input type="text" name="price" id="priceInput" value="" disabled="disabled"><br>

脚本

<script>
$(function () {
    $('#products').change(function () {
        $('#priceInput').val($('#products option:selected').attr('data-price'));
    });
});
</script>

我参考的代码Automatically show price when we select the ID in PHP

选择后不起作用。选择后自动显示价格方法

解决方法

$(function () {
        $('#products').change(function () {
            $('#priceInput').val($('#products option:selected').attr('data-price'));
        });
    });
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<select name="productID" id="products">
        <option value="" >-Select-</option>
        <option value="0" data-price="100">First product</option>
        <option value="1" data-price="200">Second product</option>
    </select><br/>
    Price :<input type="text" name="Price" value="" id="priceInput" disabled="disabled"/></br>