获取选择选项的当前值

时间:2013-10-23 02:55:57

标签: jquery jquery-ui jquery-mobile

    <script type="text/javascript">
            $(document).ready(function(){
                    $('#number').change(function(){
                     $("#number option:selected").text();
                   //alert('Value change to ' + $(this).attr('value'));
                   $('#numberdiv').html('You selected: ' + $(this).attr('value'));
            });
        });
    </script>

<select id="number" data-corners="false" data-icon="false">
                    <option value="9 ">9 </option>
                    <option value="18 ">18 </option>
                    <option value="27 ">27 </option>
                    <option value="36 ">36 </option>
                    <option value="54 ">54 </option>
                </select>
                <div id="numberdiv"></div>

这工作正常,但我不能做的是显示当前值9,它可以显示你改变到其他值后9的值,他们改变回9我想要的是当我加载“你选中:即使我没有在选择

中进行更改,也会显示9“

3 个答案:

答案 0 :(得分:3)

您需要在使用.trigge('change')或快捷方式.change()

注册处理程序后手动触发更改事件
$(document).ready(function () {
    $('#number').change(function () {
        $('#numberdiv').html('You selected: ' + this.value);
    }).change();
});

演示:Fiddle

答案 1 :(得分:0)

尝试拉动变化 在启动时运行并运行一次,如下所示:

$(document).ready(function () {
    var numberChange = function () {
        $("#number option:selected").text();
        //alert('Value change to ' + $(this).attr('value'));
        $('#numberdiv').html('You selected: ' + $(this).attr('value'));
    });

    $('#number').change(numberChange);
    numberChange();
});

答案 2 :(得分:0)

因为您在document.ready中创建的函数仅捕获所选的更改函数。

尝试添加

$('#numberdiv').html('You selected: ' + $(this).attr('value'));

以外的

 $('#number').change(function(){
                 $("#number option:selected").text();
               //alert('Value change to ' + $(this).attr('value'));
               $('#numberdiv').html('You selected: ' + $(this).attr('value'));
        });