レンジスライダーで作業しています。スライダーには、sliderOptions 属性があり、値の 1 つは最大範囲を設定するためのものです。これを正しい方法で行っているかどうかわかりません。この要素にアクセスし、ユーザーがリンクをクリックした後に「最大」値を変更する構文は何ですか?
ユーザーが製品をクリックした後、「最大」の値を設定しようとしています。
<a href="#" onclick="setCategory(500)">Set Option 2</a> | <a href="#" onclick="setCategory(1000)">Set Option 2</a>
私が呼び出そうとしている関数:
function setCategory(maxnum){
/// code I am stuck on
$('#numslider').attr('data-bind).sliderOptions("max",maxnum);
}
スライダー要素:
<div class="slider" data-bind="slider: numberAmount, sliderOptions: {min: 100, max: maxVal, range: 'min', step: 10}" id="numslider"> </div>
スライダーを実証するコード:
//スライダー
ko.bindingHandlers.slider = {
init: function (element, valueAccessor, allBindingsAccessor) {
var options = allBindingsAccessor().sliderOptions || {};
$(element).slider(options);
ko.utils.registerEventHandler(element, "slidechange", function (event, ui) {
var observable = valueAccessor();
observable(ui.value);
});
ko.utils.domNodeDisposal.addDisposeCallback(element, function () {
$(element).slider("destroy");
});
ko.utils.registerEventHandler(element, "slide", function (event, ui) {
var observable = valueAccessor();
observable(ui.value);
});
},
update: function (element, valueAccessor) {
var value = ko.utils.unwrapObservable(valueAccessor());
if (isNaN(value)) value = 0;
$(element).slider("value", value);
//console.log($(element).attr('data-bind'));
}
};