如何通过javascript禁用jQuery Mobile中的RangeSloider

如何通过javascript禁用jQuery Mobile中的RangeSloider,javascript,jquery,jquery-mobile,disabled-input,rangeslider,Javascript,Jquery,Jquery Mobile,Disabled Input,Rangeslider,我正试图通过Javascript正确禁用jQuery Mobile RangeSloider。但它不起作用。如果我将disabled属性添加到Html文件中的元素中,它就会工作。但是如果我试图通过 $('#range-monday-a').attr("disabled", "disabled"); $('#range-monday-b').attr("disabled", "disabled"); 它将disabled=“disabled”属性添加到DOM中的输入元素,但显示不变,我仍然可以使

我正试图通过Javascript正确禁用jQuery Mobile RangeSloider。但它不起作用。如果我将
disabled
属性添加到Html文件中的
元素中,它就会工作。但是如果我试图通过

$('#range-monday-a').attr("disabled", "disabled");
$('#range-monday-b').attr("disabled", "disabled");
它将
disabled=“disabled”
属性添加到DOM中的输入元素,但显示不变,我仍然可以使用滑块。(“#range-monday-a”和“#range-monday-b”是RangeSloider的两个输入元素的ID)

我认为这是因为jquerymobile为rangeslider呈现了额外的div和内容。但是我在jquerymobile.com上找不到答案,也没有在这里或通过谷歌找到答案。

您尝试过:

$('#range-monday-a').slider('disable');
$('#range-monday-b').slider('disable');
来自文档:

您是否尝试过:

$('#range-monday-a').slider('disable');
$('#range-monday-b').slider('disable');

从文档:

您也可以使用单个选择器执行此操作:

$("#range-monday-a, #range-monday-b").slider("disable");
或者更好:

$("#ancestor input[data-type='range']").slider("disable");

但是,请注意,在任何情况下,两侧的数字字段都将保持完全不透明度-。

您也可以使用单个选择器执行此操作:

$("#range-monday-a, #range-monday-b").slider("disable");
或者更好:

$("#ancestor input[data-type='range']").slider("disable");

但是,请注意,在任何情况下,两侧的数字字段都将保持完全不透明度-。

非常感谢,这确实有效!它就在我眼前,但出于某种原因,我认为这个版本只适用于通过javascript初始化的滑块。非常感谢,这确实有效!它就在我眼前,但出于某种原因,我认为这个版本只适用于通过javascript初始化的滑块。