Kendo ui 剑道网格数据(“剑道验证器”).validate()方法始终返回true

Kendo ui 剑道网格数据(“剑道验证器”).validate()方法始终返回true,kendo-ui,kendo-grid,Kendo Ui,Kendo Grid,$(“#mygrid”).kendoValidator().data(“kendoValidator”).validate()方法始终返回true,即使网格中的某些输入字段存在验证错误。在第一次加载时,验证工作正常,但在下一次编辑时,它不会显示工具提示,请帮助我解决此问题 我使用网格的模式添加了一个验证模板: schema: { model: { id: "AuctionID", fields: { AuctionID: {

$(“#mygrid”).kendoValidator().data(“kendoValidator”).validate()
方法始终返回true,即使网格中的某些输入字段存在验证错误。在第一次加载时,验证工作正常,但在下一次编辑时,它不会显示工具提示,请帮助我解决此问题

我使用网格的模式添加了一个验证模板:

schema: {
    model: {
        id: "AuctionID",
        fields: {
            AuctionID: {
                editable: false,
                type: "number"
            },
            AuctionName: {
                type: "string",
                validation: {
                    required: { message: "An Auction Name is Required!" },
                    validateAuctionName: function (input) {
                        if (input.attr("data-bind") == "value:AuctionName") { // check if this is the element to validate
                            alert(input.val().length);
                            if (input.val().length > 10) {
                                input.attr("data-validateAuctionName-msg", "AuctionName can only have a maximum of 10 characters.");
                                return false;
                            }
                            else
                                return true;
                        }
                        return true;
                    }
                }
            }
        }
    }
}

您使用的方法不会触发验证,因为它会询问“this”并验证它是否是启用了验证的剑道小部件

我发现了这种强制验证的方法—获取模型并触发对要验证的属性的更改:

model.trigger("set", { field: "FinishTime", value: model.FinishTime });

您希望在什么时候触发验证?当然,它不应该在网格初始化时出现。我的网格编辑模式是内联的,所以单击“更新”按钮时,我希望工具提示显示所有无效的条目,因此我在网格的编辑事件中添加了if($(“#mygrid”).kendoValidator().data(“kendoValidator”).validate()),以检查验证是否失败,但它始终返回true。如果这是假的,那么我可以使用app.alert()来显示工具提示,这工作正常。我没有在验证器中添加任何规则,我只使用了网格模式进行验证。你看过这个吗。在演示中,他们没有使用任何事件,我添加了一个编辑事件,因为我正在使用此方法,如果($(“#mygrid”).kendoValidator().data(“kendoValidator”).validate())要检查演示中是否通过了所有验证,在更新/编辑时会触发验证。除非你摆好小提琴,否则我帮不了你什么忙,因为我看不到一个有效的例子