javascript - 选中复选框时如何禁用幻灯片范围?

标签 javascript jquery checkbox

如何在选中复选框时禁用幻灯片范围?

选中复选框时id="unlimited"我想禁用幻灯片范围

$( "#amount" ).val( "$" + $( "#slider-range-min" ).slider( "disable" ) );

但是当未选中复选框时id="unlimited"我想启用幻灯片范围

$( "#amount" ).val( "$" + $( "#slider-range-min" ).slider( "value" ) );

我测试了这段代码但不起作用,我该怎么做?

<强> FIND FIDDLE HERE

<小时/>

脚本

$(function() {
$( "#slider-range-min" ).slider({
range: "min",
value: 0,
min: 0,
max: 700,
slide: function( event, ui ) {
$( "#amount" ).val( "$" + ui.value );
}
});      
if (document.getElementById('unlimited').checked) 
    {
        $( "#amount" ).val( "$" + $( "#slider-range-min" ).slider( "disable" ) );
    } 
else 
    {
        $( "#amount" ).val( "$" + $( "#slider-range-min" ).slider( "value" ) );
    }

});

最佳答案

要禁用 JqueryUi Slider,您应该使用 option disabled 属性来设置它。此外,您还需要捕获复选框事件来设置 slider 禁用和启用能力。

只需输入以下代码,这会将属性设置为您的预期行为。您可以在 http://jsfiddle.net/b63u9krv/10/ 中看到这一点也像下面这样:

$(function() { 
  $("#slider-range-min" ).slider({
     range: "min",
     value: 0,
     min: 0,
     max: 700,
     slide: function( event, ui ) {
              $( "#amount" ).val( "$" + ui.value );
            }
  });

  // Grab the click event of check box.
  $( "#unlimited" ).click(function(){
   if(this.checked)
     {  
       // set the slider as disable
       $( "#slider-range-min" ).slider( "option", "disabled", true );
     } 
   else 
     {
       // set the slider as enable again when you click to uncheck
      $( "#slider-range-min" ).slider( "option", "disabled", false );
     } 
  });    
});

关于javascript - 选中复选框时如何禁用幻灯片范围?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25905221/

相关文章:

javascript - javascript delete object属性正在删除整个对象

javascript - 有没有办法在添加 div 时在单独的文件中运行函数? [无 jQuery]

jquery - 使用 jQuery 将数据列表存储在 cookie 中

JavaScript 或 jQuery 检查前 20 个复选框,然后检查下 20 个,依此类推

javascript - JQuery 复选框循环

javascript - 从模板中获取 ng-model 值

javascript - 使用 javascript 捕获键盘敲击并在 setTimeout 后重放所有键盘敲击

jQuery 无法在 ie7/8 上运行

javascript - 如何使 css 类在单击 css jquery 之前返回到之前

html - 我正在尝试使用复选框来更改元素的颜色,但它不起作用