我正在看这个jQuery UI Spinner示例https://jqueryui.com/spinner/,我注意到它的输入区域的默认宽度比里面的实际字符串大得多。如何配置窗口小部件以使其宽度自动调整,并且我只能在输入框中看到文本,前面没有任何空格?
示例:
代替此:
[ 10]
我只想看这个
[10]
但是当文本进一步增长时,它应该也可以适应它:
[100]
注意:我熟悉HTML size属性,该属性使我可以指定输入的硬编码大小(以字符为单位),但在这里看不到这样的设置:{{3 }}。是因为窗口小部件透明地继承了输入窗口小部件的所有属性,还是可以通过不同的方式完成?如果由于某种原因无法实现问题中所述的目标,我愿意接受这种方法作为特殊的解决方法。
答案 0 :(得分:2)
我找到了related answer。因此,我将其与https://jqueryui.com/spinner/混合在一起。我们可以检测到_format
事件改变的值,并在其中调用resizeInput
方法:
$.widget( "ui.pcntspinner", $.ui.spinner, {
_format: function( value ) { intputElem.each(resizeInput); return value; },
});
它奏效了。在JSfiddle上尝试一下。