单击打开DateTimePicker的输入字段(我们使用this one from mobiscroll)后,我们的Android HTML5应用程序在parseInt(它试图解析“11.07.1993”)中的NumberFormatException崩溃。显然它不应该解析日期。奇怪的是,这个Bug只发生在三星Galaxy S3上。
调用mobiscroller的代码如下所示:
$(function ()
{
// create a datepicker
$("#ti_gebdat").mobiscroll().date(
{
display: 'bottom',
dateFormat: 'dd.mm.yy',
dateOrder: 'ddmmyy',
lang: 'de',
onBeforeShow: function (html, inst)
{
inst.setDate(dataclass.gebDat, true, 2);
}
});
$("#ti_gebdat").bind('change', function (event)
{
var dt = $.mobiscroll.parseDate('yy-mm-dd',event.target.value,'');
event.target.value = $.mobiscroll.formatDate('dd.mm.yy', dt, '');
dataclass.setGebDat(dt);
});
$('#ti_gebdat').scroller('option', { maxDate: new Date() });
});
输入字段如下所示:
<input name="ti_gebdat" id="ti_gebdat" style="text-align: right"
placeholder="" value="" type="date" readonly>
我怎样才能让它在Galaxy S3上运行?
更新
还会与Galaxy S4崩溃。
答案 0 :(得分:1)
问题是三星Galaxy S3 和 S4 确实支持input
元素type="date"
并调用自己的DatePicker。由于mobiscroll DatePicker也同时被调用,因此导致崩溃。从date
元素中删除input
可以解决问题。