作成日: 2017/07/13 最終更新日: 2017/12/13
文書種別
不具合
発生環境
iPhone Android
状況
修正済み
詳細
時間ピッカーを設定したwijinputdateでは、ピッカーの表示時に、wijinputdateの入力フィールドにフォーカスが移ります。
iPhone/Android上でこの操作を行うと、wijinputdateの入力フィールドがフォーカスされているため、
デバイスの文字入力のソフトキーボードが表示され、時間ピッカーが後ろに隠れます。
iPhone/Android上でこの操作を行うと、wijinputdateの入力フィールドがフォーカスされているため、
デバイスの文字入力のソフトキーボードが表示され、時間ピッカーが後ろに隠れます。
回避方法
iPhoneの問題はバージョン3.20172.118で、Androidの問題はバージョン3.20173.128で修正されました。
修正版を適用しない場合の回避方法は次の通りです。
Androidをご使用の場合、また、上記の修正版を適用しない場合は、下記のスクリプトを実装することにより、回避できます。
これにより、iPhone/Android上では時間ピッカーの表示時にwijinputdateの入力フィールドがフォーカスされず、デバイスの文字入力のソフトキーボードは表示されません。
<script id="scriptInit" type="text/javascript">
var meet = false;
var ua = navigator.userAgent.toLowerCase();
var isPhone = (ua.indexOf("iphone") != -1);
$(document).ready(function () {
$("#textbox1").wijinputdate({
pickers: { timePicker: {} },
showDropDownButton: true,
dateFormat: "T",
displayFormat: "HH:mm",
dropDownButtonMouseUp: function (e) {
if(wijmo.input.CoreUtility.IsPad() || isPhone){
meet = true;
}
}
});
var control = $("#textbox1").data("wijmo-wijinputdate");
var old = control._trySetFocus;
control._trySetFocus = function(){
if(meet){
meet = false;
return;
}
old.call(control);
}
});
</script>
修正版を適用しない場合の回避方法は次の通りです。
Androidをご使用の場合、また、上記の修正版を適用しない場合は、下記のスクリプトを実装することにより、回避できます。
これにより、iPhone/Android上では時間ピッカーの表示時にwijinputdateの入力フィールドがフォーカスされず、デバイスの文字入力のソフトキーボードは表示されません。
<script id="scriptInit" type="text/javascript">
var meet = false;
var ua = navigator.userAgent.toLowerCase();
var isPhone = (ua.indexOf("iphone") != -1);
$(document).ready(function () {
$("#textbox1").wijinputdate({
pickers: { timePicker: {} },
showDropDownButton: true,
dateFormat: "T",
displayFormat: "HH:mm",
dropDownButtonMouseUp: function (e) {
if(wijmo.input.CoreUtility.IsPad() || isPhone){
meet = true;
}
}
});
var control = $("#textbox1").data("wijmo-wijinputdate");
var old = control._trySetFocus;
control._trySetFocus = function(){
if(meet){
meet = false;
return;
}
old.call(control);
}
});
</script>
旧文書番号
82257