You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何检查ASP.NET Core Kendo Spreadsheet的验证错误及类型

ASP.NET Core中Kendo Spreadsheet验证错误的检测方法

一、批量检查工作表是否存在验证错误

要判断整个工作表是否有验证错误,需通过Kendo Spreadsheet的客户端API遍历单元格并执行验证:

  1. 获取工作表实例:
var spreadsheet = $("#你的SpreadsheetID").data("kendoSpreadsheet");
var targetSheet = spreadsheet.sheets()[0]; // 替换为目标工作表索引
  1. 遍历已使用单元格范围,检查带验证规则的单元格:
var hasValidationErrors = false;
var usedRange = targetSheet.usedRange();

for (var row = usedRange.top; row <= usedRange.bottom; row++) {
    for (var col = usedRange.left; col <= usedRange.right; col++) {
        var cell = targetSheet.range(row, col);
        var validationConfig = cell.validation();
        
        // 仅检查配置了验证规则的单元格
        if (validationConfig) {
            var validationResult = targetSheet.validateCell(cell);
            if (!validationResult.isValid) {
                hasValidationErrors = true;
                // 输出错误详情
                console.log(`单元格(${row+1}, ${col+1})验证失败:`);
                console.log(`错误类型:${validationResult.type}`);
                console.log(`错误消息:${validationResult.message}`);
            }
        }
    }
}

// 业务逻辑处理
if (hasValidationErrors) {
    alert("工作表存在验证错误,请检查!");
}

二、单个单元格的验证错误检测

仅检查特定单元格时,直接对目标单元格执行验证:

var spreadsheet = $("#你的SpreadsheetID").data("kendoSpreadsheet");
var sheet = spreadsheet.activeSheet();
var targetCell = sheet.range("A1"); // 替换为目标单元格地址

var result = sheet.validateCell(targetCell);
if (!result.isValid) {
    console.log(`错误类型:${result.type}`); // 对应配置的"warning"或"error"
    console.log(`错误提示:${result.message}`);
} else {
    console.log("单元格验证通过");
}

三、验证规则配置说明

你当前使用的服务端配置代码如下:

myCell.Validation(v => v
    .ComparerType("custom")
    .DataType("custom")
    .From("R[0]C[0] > 0")
    .Type("warning")
    .ShowButton(true)
    .AllowNulls(true)
    .TitleTemplate("Alerte de validation")
    .MessageTemplate("Attention, cette valeur est négative !"));

其中Type("warning")定义了验证失败的类型,validateCell方法返回的result.type会对应此值;result.message则会返回你设置的MessageTemplate内容。

内容的提问来源于stack exchange,提问作者serge

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.14 12:30:10