2

Javascript を介して jQuery Mobile レンジスライダーを適切に無効にしようとしています。しかし、うまくいきません。Html ファイルdisabledの Elements に属性を追加すると、機能します。<input>しかし、それを無効にしようとすると

$('#range-monday-a').attr("disabled", "disabled");
$('#range-monday-b').attr("disabled", "disabled");

DOM の入力要素に属性を追加しdisabled="disabled"ますが、表示は変わらず、スライダーも使用できます。(「#range-monday-a」と「#range-monday-b」は、rangeslider の両方の入力要素の ID です)

これは、jQuery Mobile が rangeslider 用に追加の div などをレンダリングするためだと思います。しかし、jquerymobile.com でも、ここでも、Google でも答えが見つかりません。

4

2 に答える 2

2

単一のセレクターで行うこともできます。

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

またはさらに良い:

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

ただし、両側の数値フィールドはいずれの場合も完全に不透明のままであることに注意してください -私はバグを報告しました.

于 2013-09-30T16:50:13.487 に答える
2

やってみました:

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

ドキュメントから: http://jquerymobile.com/demos/1.3.0-rc.1/docs/forms/slider/methods.html

于 2013-08-15T11:03:09.130 に答える