DatePicker更改后调用两次Button函数

时间:2017-12-11 14:11:32

标签: javascript jquery sapui5

如果我手动在sap.m.DatePicker中输入日期(不使用GUI选择器键入它)并立即按下按钮而不会失去对该字段的关注,该按钮不会执行任何正确的操作,但是当我再次点击它时,按两次调用按钮功能。

当我点击按钮时似乎调用了更改事件,因此没有按下按钮,但是当我再次按下按钮时它会触发两次。

https://jsfiddle.net/saznxrs6/

onDateChange: function(){
    alert("date changed");
},
onSubmit: function(){
    alert("Hello!");
}

参见JS Fiddle的一个简单例子。

手动在选择器中输入日期,即01/12/2017,然后单击提交按钮,而不会首先关注日期字段。您应该看到更改日期的警报。再次单击该按钮,您应该获得按钮功能的两个警报。

这是一个UI5错误还是我做错了什么?

2 个答案:

答案 0 :(得分:0)

这似乎是Chrome中的一个Bug。 Firefox做得很好。   - 在timepicker中设置值   - 按下按钮

- > timepicker的焦点丢失,因此更改事件被触发并出现弹出窗口。 - >按下按钮,同时也会触发click事件并显示第二个弹出窗口

我不知道为什么它不能用于chrome。第二个弹出窗口丢失,再次按下按钮后出现。

答案 1 :(得分:0)

只有alert()可以重现此问题...

  • ...的处理方式因浏览器而异。
  • ...不应在生产环境中处理UI5应用。

alert替换为console.log,您会看到处理程序已按预期执行:

  1. :“更改日期”,“您好”
  2. Press :“你好”