首页 > 解决方案 > 如何防止剑道网格中的页面更改

问题描述

我正在尝试验证剑道网格列中的空输入。我想在您转到其他页面之前验证当前页面。我的问题是当我得到空输入时我无法阻止页面更改。

$(function () {       
    bindPaging();        
});


function bindPaging() {
  var grid = $('#paramsGrid').data('kendoGrid');
  var pager = grid.pager;
  pager.bind('change', onPageChange);
}


function onPageChange(e) {
    var empty = $("#paramsGrid").find("input").filter(function () {
        return this.value === "" || this.value === "null";
    });
    if (empty && empty.length) {
        for (var i = 0; i < empty.length; i++) {
            $("#" + empty[i].id).addClass("input-validation-error");
        }
        e.preventDefault();        
    }   

}

“e.preventDefault”不起作用。

标签: javascriptjqueryasp.net-mvckendo-uigrid

解决方案


试着写成e.preventDefault();函数的第一行。

function onPageChange(e) {
    e.preventDefault(); // Pull this line as a first line of code in the function.
    var empty = $("#paramsGrid").find("input").filter(function () {
        return this.value === "" || this.value === "null";
    });
    if (empty && empty.length) {
        for (var i = 0; i < empty.length; i++) {
            $("#" + empty[i].id).addClass("input-validation-error");
        }        
    }   

}

推荐阅读