【问题标题】:Validating text editor input without mask in ASPxGridView在 ASPxGridView 中验证没有掩码的文本编辑器输入
【发布时间】:2012-09-17 14:51:22
【问题描述】:

我得到了一个带有一些数据的 ASPxGridView:

当我点击右边的按钮时,它进入编辑模式。

这就是我想做的:我希望编辑文本框允许 3 个数字(带或不带小数位)。小数位是可选的。例如:它必须允许 1.12、45.1 或 123。

使用掩码对我没有帮助,我不想使用正则表达式验证器。我只希望文本框允许正确的输入。

有什么想法吗?

【问题讨论】:

  • 如果输入错误,你想让它做什么?简单地拒绝导致它“错误”的有问题的击键?
  • 没错。如果用户尝试输入字母或任何不是数字或小数位的内容,我希望文本框拒绝它。
  • 我知道如何做到这一点的唯一方法是通过 Javascript,通过捕获在该文本框中键入的击键并拒绝您不想要的击键。您可以为此使用onkeydown 事件。还有一个 jQuery keypress 事件(我相信)。
  • 不过,您仍然需要验证您的输入:例如,人们可以输入两位小数。您的拒绝键的 javascript 也可以捕捉到这一点,但它需要更复杂。
  • 非常感谢,我试试看(:

标签: asp.net vb.net devexpress aspxgridview


【解决方案1】:

我知道如何做到这一点的唯一方法是通过 Javascript,通过捕获在该文本框中键入的击键并拒绝您不想要的击键。

Javascript 为此提供了 3 个事件:keydown、keyup 和 keypress。 jQuery 支持这些;对于keypress,请参阅here。有一个重要部分:

要确定输入了哪个字符,请检查事件对象 传递给处理函数。虽然浏览器使用不同 属性来存储这些信息,jQuery 规范化 .which 属性,以便您可以可靠地使用它来检索字符代码。

不过,您仍然需要对您的输入进行输入后验证:例如,人们可以输入两位小数。您的 javascript 也可以尝试阻止这种情况,但它需要更复杂,并且需要更多的努力来测试所有相关案例。

【讨论】:

猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-03-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-06-10
相关资源
最近更新 更多