首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >DHTMLX日历onChange

DHTMLX日历onChange
EN

Stack Overflow用户
提问于 2013-04-10 08:55:31
回答 1查看 3.3K关注 0票数 0

我在DHTMLX Calendar的输入字段中使用onChange时遇到了问题。

我用以下代码初始化代码:

代码语言:javascript
复制
   jQuery(document).ready(function($){              
        var calendar;
        calendar = new dhtmlXCalendarObject(["date"]);
        calendar.hideTime();
        calendar.setDateFormat("%d/%m/%Y");
        $('.lightbox').lightbox();
        $('#slider').cycle();
    });
    function checkDate() {
        var date = $("[name='date']").val();
        alert(date);
    }

在我使用的表单中:

代码语言:javascript
复制
<input type="text" name="date" id="date" onchange="checkDate();" />

它应该是什么样子(以及如何使用JQuery UI日期选择器)一旦在输入字段中输入日期,onchange函数就会触发。然而,在本例中:此日历的onchange什么也不做。

我已经尝试将以下内容更改为:

代码语言:javascript
复制
   jQuery(document).ready(function($){              
        var calendar;
        calendar = new dhtmlXCalendarObject(["date"]);
        calendar.hideTime();
        calendar.setDateFormat("%d/%m/%Y");
        calendar.attachEvent("onChange",function(date, state){
               checkDate();
        });
        $('.lightbox').lightbox();
        $('#slider').cycle();
    });
    function checkDate() {
        var date = $("[name='date']").val();
        alert(date);
    }

但onchange事件发生在输入日期之前,即当我单击输入字段时。

从DHTMLX更改到此JQuery的原因是DHTMLX日期选择器不支持所有平台(iPhone/iPad等),而DHTMLX支持。

EN

回答 1

Stack Overflow用户

发布于 2013-11-05 05:44:02

我认为这是日历从输入初始化时的一个错误,问题是一旦单击输入字段就会触发onChange事件(如果您console.log或打印日期参数,就会看到这一点),而不是当有真正的用户生成的更改时,我有相同的问题,您可以选择使用'onClick‘事件(这只在他们点击选择器时有效,而不是当他们手动更改日期时),或者使用JQUERY来捕获事件,因为您直接从输入字段获取日期,而不是日历发送的日期。

代码语言:javascript
复制
calendar.attachEvent("onClick",function(date){
               checkDate();
        });
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15915160

复制
相关文章

相似问题

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