我有一个Validation,当用户将步降为零时,Step Input会引发值状态错误。值状态更改时会出现红色边框,但从输入字段中聚焦出来时消失。
Code : <StepInput value="{oModel>/Step}" min="0" max="100" step="10" valueState="{= ${oModel>/Step} === 0 ? 'Error' : 'None'}"></StepInput>
答案 0 :(得分:0)
StepInput
控件具有一个称为StepInput.prototype._verifyValue
的私有方法,该方法在聚焦(StepInput.prototype.onfocusout
)上触发。此方法检查输入的值是否在最小值和最大值之间。如果输入的值有效,则它将值状态设置为None
。解决此问题的一种方法是使用addEventDelegate
添加您自己的方法来重点关注。如果您希望StepInput
中的值是10的倍数,则可能仍然需要这样做,因为输入将接受间隔[min,max]中的任何数字。
答案 1 :(得分:0)
issue现在已通过UI5 1.68修复。您可以看到valueState
现在仍然保持焦点:https://jsbin.com/hiwihaw/edit?js,output
此外,您还需要将'None'
操作数替换为undefined
,以使控件应用默认行为(如果value
超出{{1} } / min
)
max