如何从 p:inputNumber 更新 p:slider?

How to update a p:slider from the p:inputNumber it is for?

我们想使用 Primefaces 的滑块。

我们想使用逗号 (",") 代替小数点 (".")

按照 Whosebug 上其他帖子的建议,我们用 InputNumber 替换了 InputText。

我们注意到在输入中手动写入数字,滑块不会自动设置(使用 InputText,它会自动设置)。

我们注意到在陈列柜中 https://www.primefaces.org/showcase/ui/input/slider.xhtml 第三个例子使用 InputNumber 也有同样的问题。

有人知道一些解决方法吗? (即使在客户端...)

<p:inputNumber  id="decimal" value="#{sliderView.number2}" decimalSeparator="," thousandSeparator="."/>
<p:slider for="decimal" minValue="0.2" maxValue="7.1" step="0.1" />

感谢您的报告。我已经创建了这个问题和 PR:

问题:https://github.com/primefaces/primefaces/issues/6397

公关:https://github.com/primefaces/primefaces/pull/6398

如果您现在需要此修复,只需将此 JS 添加到您的代码中即可:

PrimeFaces.widget.InputNumber.prototype.setValueToHiddenInput = function(value) {
    this.hiddenInput.val(value);
    this.hiddenInput.trigger('change');
};