簡體   English   中英

將第一個可見選項設置為默認值

[英]Setting first visible option as default

我有一個過濾器方法,只要更改日期和時間,函數checkRoom(); 叫做。 此功能基本上會過濾掉一些完全起作用的選項。 我現在的問題是,即使過濾了選項,過濾后的值仍然顯示在頂部。 現在,如何將第一個可見選項設置為默認值?

我已經嘗試使用這兩個代碼,但無法正常工作。 document.getElementById("room4").value = ('option:visible').first().attr('selected', 'selected');

jQuery(".roomss option:first-child:visible").attr("selected", true);

HTML:

<select name="room4" id="room4" class="roomss form-control placeholder-no-fix" style="display: inline; width: 30%;">
    <option value="1" class="roomnumber1">1</option>
    <option value="2" class="roomnumber2">2</option>
    <option value="3" class="roomnumber3">3</option>
    <option value="4" class="roomnumber4">4</option>
    <option value="5" class="roomnumber5">5</option>
    <option value="6" class="roomnumber6">6</option>
</select>

Javascript:

        function checkRoom() {
            var date = document.getElementById("date4").value;
            var time = document.getElementById("time4").value;
            var str = date + " " + time + ":00.0";
            $('option.roomnumber1').show();
            $('option.roomnumber2').show();
            $('option.roomnumber3').show();
            $('option.roomnumber4').show();
            $('option.roomnumber5').show();
            $('option.roomnumber6').show();
            for(var i = 0; i < orderids.length; i++) {
                if(str === scheduledates[i]) {
                    if(rooms[i] !== "null") {
                        $('option.roomnumber' + rooms[i]).hide();
                    }
                }
            }
            // insert code that sets first visible option as default value
        }

嘗試以下操作:

$(".roomss option:visible:first").attr("selected", "selected");

用於新版本的jQuery

$(".roomss option:visible:first").prop("selected", "selected");

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM