jquery - 如何在回发后操作 jQuery UI 范围 slider 中的 ui.handle?

标签 jquery jquery-ui user-interface slider handle

我有一个带有自定义步骤的 jquery 范围 slider ,它有两个句柄(最小和最大),选择一个封闭区域来过滤我的 .aspx 页面中的结果。一旦我点击确认按钮,页面就会回发并显示我的理想结果。

但是第一次我想移动右侧的 handle ,移动的是左侧的 handle 。当我记录当前句柄时,它始终显示左侧的句柄。我不明白为什么。

这是我的代码的一部分:

var stepvalues = ["0", "3000", "5000"];
$("#slider-range").slider({
     range: true,
     min: 0, 
     max: 2,
     step: 1, 
     values: [0, 5000],
     slide: function (event, ui) {
     console.log($(ui));            
     console.log($(ui.handle));
     }
});

你有什么线索吗?

非常感谢您。

编辑:

我想要做的是当我移动 slider 时,最小/最大范围是从 0 到 5000,有 3 个可能的值。只能是 0 或 3000 或 5000。

现在我可以移动 slider 来显示相对值,并且当我提交搜索表单时它可以工作。但是一旦它完成回发,当我第一次移动右侧的 slider 时,左侧的 slider 就会移动。这对我来说是一种奇怪的行为。我希望它能正常工作。

当我登录“ui”时,它有几个属性:

Object { handle=a.ui-slider-handle, value=3, values=[2]}

“ui.handle”的值始终是 slider 中的第一个句柄;
“ui.value”的值始终是第一个句柄的值;
而“ui.values”包含两个句柄的值。

编辑:

我发现很难操作 $(ui.handle),我使用了以下代码来解决我的问题。

$("#slider-range").slider('option', 'values', [min, max]);

最佳答案

由于我自己解决了这个问题,所以我将工作代码放在这里并将其标记为已解决!

$("#slider-range").slider('option', 'values', [min, max]);

关于jquery - 如何在回发后操作 jQuery UI 范围 slider 中的 ui.handle?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12624425/

相关文章:

jquery - 应用 jquery 模态掩码

javascript - jquery 如何使用 tr :nth-child(i) 构造每个或 for 循环构造

javascript - table thead 固定位置与顶栏

jquery - Google map v3 和信息框

.net - 如何调整表单上的控件大小以适应不同的分辨率?

javascript - Jquery ui 对话框未通过 `Escape` 按键关闭

JQuery UI 可排序 : restore position based on some condition

javascript - Twitter Bootstrap 中的树

matlab - 编辑器选项卡在 GUI 中消失

java - 嵌套 Platform.runLater 调用与顺序调用 : When is it safe to read side effects of layout that happened on the JavaFX Application thread?