点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)如果 sap.m.Input字段...
点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)如果 sap.m.Input字段...
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
如果 sap.m.Input字段的值已更改,则只要焦点离开该字段,就会触发 change 事件。 焦点离开该字段的一种方式是,如果用户单击 sap.m.Button 控件。 在这种情况下,我希望 Button 上的 press 事件与 Input 字段 change 事件一起触发( 如果"输入"字段中的值已更改)。
这正是我在Firefox [60.8.0esr(32位)]中看到的内容。 change 事件在 press 事件之前触发。
在Chrome [76.0.3809.100(正式版本)(64位)中,如果更改了 Input 字段值,则总是抑制(或阻止) press 事件 紧接之前。 换句话说,当我单击 Button 时,会看到 press 事件,但前提是还没有触发 change 事件。 如果第二次单击 Button 按钮,则会触发两次 press 事件。
在Edge [42.17134.1.0]中,我再次看到了不同的行为。 如果触发 change 事件,则会阻止 press 事件,但是当我再次单击 Button 时,我会收到 press 事件 一次(不是两次)。 请注意,这是Edge的发行版本,而不是新的Chromium驱动版本。
我创建了一个小提琴来演示此问题:
https://jsfiddle.net/mikeedoyle/1c2yhtez/
要测试,请在第一个输入字段中输入一个值。 将光标移到下一个输入字段。 在该字段中输入一个值,然后单击按钮。 再次单击该按钮。
我已明确放置UI5版本,以便轻松更改。 我在许多不同的版本中看到相同的行为。 它看起来像不是一个新错误。
我的问题看起来很像这个Stack Overflow帖子,没有引起太多关注:
其他任何人以前都看过此问题吗? 我已经使用UI5超过4年了,而且从未遇到过类似的问题。 我应该在Open UI5 Github页面上打开问题吗?
嗨,
有一个不带ui5的示例,表明问题出在警报中。 它劫持了焦点,因此单击永远不会发生在按钮上。
原生HTML标记:
在没有警报的情况下处理mousedown事件(在您的情况下为input.change事件),它将起作用。
此致
Alexander Ivanov(UI5)
一周热门 更多>