作成日: 2018/05/29 最終更新日: 2018/07/25
文書種別
不具合
状況
修正済み
詳細
InputDateのテンプレート列のセルにキーボードから値を入力した際、入力後にTabキーを押下しても、セルの値が更新されません。
Enterキーを押下した場合には、セルの値が正常に更新されます。
Enterキーを押下した場合には、セルの値が正常に更新されます。
回避方法
この問題は2018J v2(4.0.20182.160)で修正されました。
※修正版を適用しない場合の回避方法は以下の通りです。
InputDateのHtmlAttributeプロパティを使用して、keydownイベントを処理するための下記のようなスクリプトを定義することで回避できます。
<script id="dateInput" type="text/template">
@(Html.C1().InputDate()
.HtmlAttribute("onkeydown", "workaround(event);")
・・・
.ToTemplate()
)
</script>
<script type="text/javascript">
function workaround(e) {
if (e.keyCode == wijmo.Key.Tab) {
var edt = wijmo.Control.getControl(e.currentTarget);
if (edt && edt._commitText) {
edt._commitText();
}
}
}
</script>
@(Html.C1().FlexGrid().Id("flexGrid")
・・・
.Columns(bl => {
bl.Add(cb => cb.Binding("Hired").Header("Hired").Name("Hired").CellTemplate(ctb => ctb.EditTemplateId("dateInput")));
・・・
})
)
※修正版を適用しない場合の回避方法は以下の通りです。
InputDateのHtmlAttributeプロパティを使用して、keydownイベントを処理するための下記のようなスクリプトを定義することで回避できます。
<script id="dateInput" type="text/template">
@(Html.C1().InputDate()
.HtmlAttribute("onkeydown", "workaround(event);")
・・・
.ToTemplate()
)
</script>
<script type="text/javascript">
function workaround(e) {
if (e.keyCode == wijmo.Key.Tab) {
var edt = wijmo.Control.getControl(e.currentTarget);
if (edt && edt._commitText) {
edt._commitText();
}
}
}
</script>
@(Html.C1().FlexGrid
・・・
.Columns(bl => {
bl.Add(cb => cb.Binding("Hired").Header("Hired").Name("Hired").CellTemplate(ctb => ctb.EditTemplateId("dateInput")));
・・・
})
)
旧文書番号
82781