1

剣道 UI グリッドがあります。その中に、datepicker を含む 2 つの列があります。インライン編集中に、各行の 2 つの列の間で日付を比較したいと考えています。更新をクリックすると、検証が開始されます。エディター テンプレートを使用したくありません。これが私が実装しようとしているコードです。

fields: {
                    BusinessAreaDivisionMappingId: { type: "number", editable: false, nullable: false },
                    BatoDivisionMappingStatus: { type: "number", nullable: false, validation: { required: true } },
                    BusinessAreaHierarchyId: { type: "number", editable: false },
                    BusinessAreaCode: { type: "string", editable: false },
                    DivisionCode: { type: "string", editable: false },
                    ReferenceValue: { type: "string", validation: { required: true } },
                    StartDate: {
                        type: "date",
                                required: true,
                                validation: {
                                    required: true,
                                    dateComparisonValidation: function (element) {
                                        alert('hi');
                                        debugger;
                                        var columnIndex = 0;
                                        var grid = $("#bAPLMappingGrid").data("kendoGrid");

                                        for (columnIndex; columnIndex < grid.columns.length; columnIndex++) {
                                            if (grid.columns[columnIndex].field == "EndDate") {
                                                break;
                                            }
                                        }
                                        var StartDate = $(element).data("kendoDatePicker").value();
                                        var EndDate = (new Date($(element).closest("tr").find("td:eq(" + columnIndex + ")").text()));
                                        element.attr("data-dateComparisonValidation-msg", "Start Date Cannot be more than End Date");
                                        if (StartDate && EndDate)
                                            return (StartDate <= EndDate);
                                        return true;
                                    }
                                }
                    },
                    EndDate: { type: "date" },
                    IsDeleted: { type: "boolean", editable: false, nullable: true }
4

0 に答える 0