Закрыть событие в Кендо Datepicker огонь много раз

Я создал шаблон в моей сетке:

template: '#if(IniReal != ""){# <div class="text-center">#= IniReal #</div> # } else {#<input class="fechaReal" />  #} #',

в этом шаблоне указатель даты создается, когда элемент моего расположения становится пустым

$(".fechaReal").kendoDatePicker({
                            format: "dd-MM-yyyy",                            
                            parseFormats: ["dd-MM-yyyy"],
                            change: vmSeg.Cambio,
                            close: vmSeg.Cerrar
                        });

проблема заключается в событии Close после первого запуска, в следующий раз, когда он запускается, он делает это дважды, и так далее, я просто хочу, чтобы событие Close срабатывало один раз, и оно не запускается повторно

Это мое мероприятие Закрыть

 vmSeg.Cerrar = function (e) {
                $("#ActiSeguimiento").on("focusout", ".k-datepicker", function (e) {
                    vmSeg.grid = $("#ActiSeguimiento").data("kendoGrid");
                    vmSeg.dataItem = vmSeg.grid.dataItem($(this).closest("tr"));                    
                    vmSeg.dataItem.IniReal = vmSeg.NuevaFecha;
                    return false;
                });
            }

и это мое событие Change:

vmSeg.Cambio = function(e) {
                vmSeg.NuevaFecha = kendo.toString(kendo.parseDate(this.value()), "dd-MM-yyyy");

            }

Что не так в моем событии Закрыть?

1 ответ

Решение

Я проверил предоставленное вами додзё, и похоже, что проблема вызвана объявлением события 'focusout', которое подключается к каждому закрытию, а не в виджете Kendo. Когда я удалил декалирование события 'focusout', сценарий работал правильно. Закрытие было правильно сработало на моей стороне, но "фокусировка" срабатывала много раз. В таком случае я бы порекомендовал вам определить, как здесь это отдельно, чтобы он срабатывал только один раз.

Другие вопросы по тегам