首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >rome.js知道用户何时完成

rome.js知道用户何时完成
EN

Stack Overflow用户
提问于 2019-07-17 01:20:38
回答 1查看 191关注 0票数 0

我使用rome.js作为日期选择器。当用户完成输入日期时,我需要日期选择器离开并在页面上被显示日期的文本替换。问题是,我不知道如何判断用户何时完成了日期的选择。我真的不想为他们添加另一个控件来删除日期选择器,但是我想从用户的操作中推断出这一点。

其中一个想法是寻找hide事件--与autoHideOnClickautoHideOnBlur一起使用时,我认为我可以判断用户已经进入了一个新的日期,并且已经完成了。但是,我发现,一旦创建了选择器,我就会立即得到这个事件--即使在创建选择器时输入元素有焦点,选择器也不会立即弹出。此外,隐藏事件有时甚至在用户仍然输入日期时也会发生,例如,如果用户输入日期,然后仍然希望手动输入时间。

我所创建的输入元素上的blur事件也有类似的问题--例如,它在打开选择器时触发。

如何知道用户何时完成输入日期/时间?

EN

回答 1

Stack Overflow用户

发布于 2019-07-17 03:36:43

我认为您可以在日期输入和每次按下笔画上添加一个按键事件处理程序,验证日期,如果它是有效的,则将日期选择器(类名称为rd-容器)的显示属性更改为"none“。

这是伪码。我在https://www.cssscript.com/demo/highly-customizable-date-and-time-picker-with-rome-js/

代码语言:javascript
复制
dateInput.onkeydown = function () {
   if(dateInput.text is valid) { //validate the date here.
     $(".rd-container").css("display","none");
   }
}

您可以使用相同的函数来检测用户“粘贴”日期文本是否进入您的输入元素,方法是侦听"onpaste“事件。

代码语言:javascript
复制
dateInput.onpaste = function () {
   if(dateInput.text is valid) { //validate the date here.
     $(".rd-container").css("display","none");
   }
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57067310

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档