从数据库中警报选定的循环下拉列表项

时间:2018-10-25 02:53:54

标签: javascript php jquery

我使用从数据库中获取选择标记进行循环下拉菜单。每当选择或更改选择项时,我都想提醒值。但是问题在于它只警告选择项的第一行(橙色框)。如何使每一个选择都改变,它应该警告值(蓝色框)?

Display select

<select id="select_price" name="select_price" class="form-control" onchange="demo()">
    <option value="">--- Please Select ---</option>
    <?php
        for ($countPrice=1; $countPrice<=10; $countPrice++) {
          echo "<option value='"; echo $countPrice; echo "'>";
          echo $countPrice;
          echo "&nbsp;&nbsp;( ";
          echo number_format((float)$countPrice*$row_display['price'], 2, '.', '');
          echo ")</option>";
        }
    ?>
</select>

这是onChange的jQuery

function demo() {
    alert($("#select_price").children("option").filter(":selected").val());
}

3 个答案:

答案 0 :(得分:1)

将jQuery脚本编码为.js文件。您可以使用<script>在正面进行调用。在下面的程序中,事件是动态触发的:

$(document).ready(function(){
    $("#select_price")
        .change(function () {
            $( "select option:selected" ).each(function() {
               alert( $( this ).text() );
            });
        });
});

如果.text()不起作用,请尝试.val()

答案 1 :(得分:0)

您可以尝试使用它而不是演示功能

$('#select_price').on('change', function() {
    alert($(this).val());
});

答案 2 :(得分:0)

(代表问题作者发布的解决方案)

$( "select" ).change(function() {
var str = 0;
$( "select option:selected" ).each(function() {
  str += Number($(this).val());
});
$( ".cakoroi" ).text( str );}) .trigger( "change" );

它将合并所选选择的值。