jQuery-禁用select选项取决于另一个div字段的值



我在禁用option字段中的某些值时遇到问题。我尝试禁用所有小于另一个div字段值的值。我的代码如下:

<div id="cur-hour">09</div>
<select id="time_to_hour" class="select">
    <option value="">---</option>
    <option value="1">1</option>
    <option value="2">2</option>
    <option value="3">3</option>
    <option value="4">4</option>
    <option value="5">5</option>
    <option value="6">6</option>
    <option value="7">7</option>
    <option value="8">8</option>
    <option value="9">9</option>
    <option value="10">10</option>
    <option value="11">11</option>
    <option value="12">12</option>
    <option value="13">13</option>
    <option value="14">14</option>
    <option value="15">15</option>
    <option value="16">16</option>
    <option value="17">17</option>
    <option value="18">18</option>
    <option value="19">19</option>
    <option value="20">20</option>
    <option value="21">21</option>
    <option value="22">22</option>
    <option value="23">23</option>
</select>

我有这个js代码:

$(function(){
    if($("#time_from_hour > option").val() < $("#cur-hour").val()) {   
            $('#time_from_hour > option').prop('disabled', true);
        }
});

但它没有起作用——这是jsfiddle:http://jsfiddle.net/qhPp7/36/

$(function(){
var n=parseInt($("#cur-hour").html());    
$("#time_to_hour option").each(function(){
    if(parseInt($(this).val()) < n ) {
        $(this).prop('disabled', true);
    }
});
});

http://jsfiddle.net/qhPp7/38/

您的条件不起作用,因为option标签的valuestring.

此外,val()不用于divs,因此使用.html().text()

此外,它必须解析为整数

尝试这个

$(function(){
var options = document.getElementById('time_to_hour').options;
var chk = document.getElementById('cur-hour').innerHTML;

for(var o=0;o< options.length;o++)
{
        var va = parseInt(options[o].value);
    if(va!="" && va<chk)
    {
        alert(va);
        options[o].disabled=true;
    }   
}
});

请使用span存储值,这样更容易找到它。

09

$(function(){

$('#time_to_hour option').each(function(){

    if (parseInt($("#index").text()) > parseInt($(this).text())) {
        this.disabled = true;
    }
}); 

});

我希望上面的代码能为你工作。。。这是你小提琴的工作例子http://jsfiddle.net/qhPp7/35/

最新更新