jQuery DatetimePicker插件 - onClose事件不会在IE Webview(PhoneGap)应用程序上触发

时间:2013-09-19 12:07:24

标签: jquery cordova datetimepicker

我正在开发将在Windows IE webview上运行的PhoneGap应用程序。在应用程序中,我们使用下面提到的DatetimePicker插件: jQuery DateTimePicker插件(http://umcdatetimepicker.codeplex.com

这个插件完全适用于所有Mac,但它在Windows webview上有奇怪的行为,因为它的onClose函数确实按预期工作。

我们在点击日历图片时显示日历。如果我点击屏幕上的任何地方,日历就会关闭然而它只是隐藏而非事件在日历结束时起火。我已经对其他逻辑引发的测试提出警告。我编写了自己的onSelect和onClose事件,它覆盖了主要的插件动作。

正如我上面提到的,日历只是隐藏但是事件没有接到电话。隐藏日历后,如果我点击日历,那么只有它触发onClose事件并抛出用于测试目的的警报。这意味着我只能在日历图像上正确触发onClose事件。这两个事件在IE7 / 8浏览器上都能很好地工作,但onClose事件在IE Webview上不起作用。我尝试了很多东西,但没有用。这是我的代码

$("#datetimepicker").datetimepicker({
            onSelect:function($this){
                //alert($this);
               alert("i am selected");
            $(this).data('datepicker').inline = true;
            var hour = $('.ui-datepicker .dateimepicker-hour').val();
            //alert (hour);
                var minuts = $('.ui-datepicker .dateimepicker-minuts').val();
                //alert (minuts);
                var second = $('.ui-datepicker .dateimepicker-second').val();//alert (second);

                var time = hour + ":" + minuts + ":" + second;
                //alert (time);
                //alert($this +" "+ time);
            $("#datetimepicker").attr("value",$this +" "+ time);
            },
            onClose: function() {
                alert("its on close");
                var currentsetdate = $(this).val();
                if(currentsetdate == ""){}
                else{
                //alert (currentsetdate);
                var onlydate = currentsetdate.split(' ')[0];
                //alert (onlydate);
             $(this).data('datepicker').inline = false;
             var hour = $('.ui-datepicker .dateimepicker-hour').val();
            //alert (hour);
                var minuts = $('.ui-datepicker .dateimepicker-minuts').val();
                //alert (minuts);
                var second = $('.ui-datepicker .dateimepicker-second').val();//alert (second);

                var time = hour + ":" + minuts + ":" + second;
                //alert (time);
                 $("#datetimepicker").attr("value",onlydate +" "+ time);
                }}

是否有人了解限制代码。如果任何人帮助解决问题,那将是一件好事。是否有可能将日历上的onClose事件绑定到身体的任何位置?

此致 Jitendra

0 个答案:

没有答案