Kendo UI for jQuery数据管理使用教程:Spreadsheet – 创建基于RegExp的自定义验证

Kendo UI 的Spreadsheet控件的验证类型不直接基于RegExp规则,本文主要介绍如何创建基于RegExp的自定义验证。

Spreadsheet的验证类型不直接基于RegExp的规则。

要解决此问题,请使用允许您传递任何公式的自定义验证类型。 当公式返回非假值时,验证将通过。 虽然内置函数不包括 RegExp 匹配函数,但自定义函数很容易创建。

<script>// Define a REGEXP_MATCH function that returns true if a string// matches a given pattern (regexp).kendo.spreadsheet.defineFunction("REGEXP_MATCH", function(str, pattern, flags){var rx;try {rx = flags new RegExp(pattern, flags) : new RegExp(pattern);} catch(ex) {// could not compile regexp, return some error codereturn new kendo.spreadsheet.CalcError("REGEXP");}return rx.test(str);}).args([[ "str", "string" ],[ "pattern", "string" ],[ "flags", [ "or", "string", "null" ] ]]);</script><div id="spreadsheet"></div><script>var spreadsheet = $("#spreadsheet").kendoSpreadsheet({columnWidth: 100}).getKendoSpreadsheet();var sheet = spreadsheet.activeSheet();sheet.range("A1").value("IP Address in B1:");// Using custom validation, you can pass any formula and the cell// validates if the formula returns a non-false value (see the `from` field).sheet.range("B1").validation({comparerType: "custom",dataType: "custom",from: 'REGEXP_MATCH(B1, "^[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}$")'});// Note the difficulty of properly quoting a regexp in a string.// An alternative would be to write the regexp in a// variable and encode it with JSON.stringify, i.e.://// var rx = "^[0-9]{1,3}\.[0-9]{1,3}\." etc//// and then pass it like this//// from: '=REGEXP_MATCH(B1, ' + JSON.stringify(rx) + ')'</script>

Kendo UI for jQuery | 下载试用

Kendo UI for jQuery是完整的jQuery UI组件库,可快速构建出色的高性能响应式Web应用程序。Kendo UI for jQuery提供在短时间内构建现在Web应用程序所需要的一切,从多个UI组件中选择,并轻松地将它们组合起来,创建出酷炫响应式的应用程序,同时将开发时间加快了50%。


了解最新Kendo UI最新资讯,请关注Telerik中文网!

高端UI界面开发
标签:

来源:慧都网

声明:本站部分文章及图片转载于互联网,内容版权归原作者所有,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2021年7月22日
下一篇 2021年7月22日

相关推荐

发表回复

登录后才能评论