我正在开发将在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