【问题标题】:Change value of Connected Jquery UI slider based on input field根据输入字段更改 Connected Jquery UI 滑块的值
【发布时间】:2012-10-13 19:25:02
【问题描述】:

我有 3 个连接的 jquery ui 滑块,其值反映在它们旁边的输入字段中。

http://jsfiddle.net/oniiru/gWbMp/

现在,当我滑动滑块时,输入的值会发生变化,但是如果我在输入中键入新值,我不知道如何更改滑块的值。我知道还有其他这样的例子,但没有连接滑块,我不知何故无法让它工作。有人可以帮忙吗?抱歉,我对此很陌生,任何帮助将不胜感激。

作为旁注,滑块手柄也会超出滑块的末端,如果有人想帮助我弄清楚如何解决这个问题,我当然会很感激。 :)

谢谢大家,

【问题讨论】:

    标签: jquery jquery-ui uislider jquery-ui-slider


    【解决方案1】:

    使用以下代码:modified jsfiddle

        $("input").change(function(){
    
             var index = $(this).attr('class').substring(0,1);
            $("#slider_"+ index).slider('value', this.value);
            refreshSliders( index - 0 );
    });
    

    注意:您不应为多个元素使用相同的 ID。 (您对所有输入使用相同的 id)。

    【讨论】:

    • 嗨 Sushil,非常感谢您的帮助。它非常接近,实际上我过去曾尝试过类似的方法,但由于某种原因,这些值并不总是像最初那样达到 100%。大多数时候,如果我在框中添加任何数字,似乎只有相应的滑块会改变,其余的会保持不变,这意味着它可以加起来超过 100%。您对如何保持滑块之间的连接有任何想法吗?再次感谢您的帮助。
    • 我在代码中进行了更改。我正在使用 refreshSliders( index );关联滑块我认为现在它工作正常。检查一次 jsfiddle。
    • 再次感谢,现在看起来效果更好了,但还不够。例如,如果您在加载后的第一个输入中输入 99,则底部滑块显示为 11,因此显然加起来超过 100%。奇怪的是,当您将滑块移动一点并输入 99 时,它会完美运行。它似乎也四舍五入,所以如果我输入 77,而不是让一个 11 和另一个 12,它使两个 12 和加起来为 101%。有没有什么办法解决这一问题?再次,非常感谢 os。这似乎超出了我的想象......
    • 如果它只是第一次发生,那么可能有一些初始化问题。我编辑了 jsfiddle 以使按钮位置更准确。您可以使用开发人员工具调试您的代码。抱歉,我没有太多时间查看您的代码。
    • 非常感谢,非常感谢您抽出宝贵时间帮助我。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-10-21
    • 1970-01-01
    • 2021-06-15
    • 1970-01-01
    • 2013-10-09
    • 1970-01-01
    • 2011-05-24
    相关资源
    最近更新 更多