作成日: 2021/09/13 最終更新日: 2021/12/22
文書種別
不具合
発生環境
2021J v2 (4.5.20212.319)
状況
修正済み
詳細
InputDateのTextChangedイベントが不正に動作し、次のような現象が発生します。
- ユーザーが変更を行う前の初期化のタイミングでTextChangedイベントが発生する
- TextChangedイベント直後にsubmitを行うと不正な値がサーバーに送信される
回避方法
この問題は2021J v3(4.5.20213.327)で修正されました。
※修正版を適用しない場合の回避方法は以下の通りです。
TextChangedイベント内でコントロールから取得した日付とイベント引数から取得した日付を比較し、同じ場合にはsubmitしないようにします。また、submitする場合にはsetTimeoutでタイミングを調整します。
<script>
function textChanged(s, e) {
var ymOld = new Date('@ViewBag.ym').getTime(),
ymNew = s.value.getTime();
if (ymNew == ymOld) return;
$('#button').val('search');
setTimeout(function () {
submitForm();
}, 1);
}
</script>
※修正版を適用しない場合の回避方法は以下の通りです。
TextChangedイベント内でコントロールから取得した日付とイベント引数から取得した日付を比較し、同じ場合にはsubmitしないようにします。また、submitする場合にはsetTimeoutでタイミングを調整します。
<script>
function textChanged(s, e) {
var ymOld = new Date('@ViewBag.ym').getTime(),
ymNew = s.value.getTime();
if (ymNew == ymOld) return;
$('#button').val('search');
setTimeout(function () {
submitForm();
}, 1);
}
</script>