【问题标题】:How do I add validation to a cell in the Ext Lib datagrid?如何向 Ext Lib 数据网格中的单元格添加验证?
【发布时间】:2012-10-30 21:00:20
【问题描述】:

我有一个包含来自不同文档的数据的数据网格。用户可以编辑某些列。我想限制他们只能输入一个数字。 我想从客户端而不是服务器端执行此操作,因为这意味着要检查 20 个或更多文档。

好的,知道该怎么做。如果输入非数字或无效值,请创建一个函数以将数据格式化为红色背景。将函数放在 scriptBlock 中,并将名称放在每列的格式化程序字段中

function ValidNmbr(s)
{
var RegularExpression = new RegExp(/^\$?([1-9]{1}[0-9]{0,2}(\,[0-9]{3})*(\.[0-9]{0,2})?|[1-9]{1}[0-9]{0,}(\.[0-9]{0,2})?|0(\.[0-9]{0,2})?|(\.[0-9]{1,2})?)$/);<br/>
if(RegularExpression.test(s))
{
    return s;
}
else {
    return "<span style='background-color:red'>"+s+"</span>";
}
}

【问题讨论】:

  • 如何实现数据网格?使用数据表?
  • 这是 xpage ext 库的 dojo 数据网格,带有视图的休息服务。查看格式化程序以了解如何突出显示错误。这是一份费用报告,因此在他们输入后进行验证,但希望防止延迟。
  • Dojo 网格has data types,所以它会处理数字条目

标签: datagrid xpages xpages-extlib


【解决方案1】:

可以绕过客户端格式强制执行(任何有 firebug 的人),因此您必须清楚这只是为了用户的舒适,而不是为了数据的完整性。

在服务器端:您可以有一个带有数字掩码的输入字段。不需要代码——可能是最少的工作。如果你想做那个客户端:

  1. 对数字格式使用 HTML5 属性
  2. 使用some helper 使旧版浏览器正常运行
  3. 考虑使用 Dojo 网格。不错validation

希望有帮助

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-08-18
    • 1970-01-01
    • 1970-01-01
    • 2014-08-19
    • 1970-01-01
    相关资源
    最近更新 更多