启用/禁用范围输入

时间:2013-09-02 16:34:17

标签: javascript jquery asp.net asp.net-mvc-4

我有一个以这种方式定义的范围输入:

@Html.LabelFor(m => Model.Quality, Resources.CompressionQuality)
<input type="range" name="Quality" id="Quality" data-mini="true" min="0" max="100" value="@Model.Quality">

和下拉列表:

@Html.LabelFor(m => Model.TiffCompression, Resources.TiffCompression)
@Html.DropDownListFor(m => Model.TiffCompression, tiffCompressions, Html.DataMiniAttribute())
@Html.ValidationMessageFor(m => Model.TiffCompression)

根据DropDown选项,我想启用/禁用范围输入。我是这样做的:

<script type="text/javascript">
    $(document).ready(function () {

        function ToggleSection() {
            var selectedVal = $('#TiffCompression').find('option:selected').val();
            $('#Quality').prop('disabled', true);

            switch (selectedVal) {
                case "JPEG":
                    $('#Quality').prop('disabled', false);
                    break;
            }
        }

        ToggleSection();
        $('#TiffCompression').change(function () { ToggleSection(); });
    });
</script>

已禁用属性已更改,但在我单击它之前不会刷新控件。我试着打电话给change(),不同的刷新等,但没有运气。

如何启用/禁用它?

1 个答案:

答案 0 :(得分:2)

不确定为什么它不起作用,但

$('#Quality').slider('disable');

$('#Quality').slider("enable");

完成了这项工作。