【发布时间】:2008-09-29 23:24:22
【问题描述】:
我有一个 asp.net 文本框和一个 MaskedEditExtender 控件。文本框用于日期输入。 MaskedEditExtender 具有 MaskType="Date" Mask="99/99/9999"。
当表单以无效日期提交时,浏览器会显示 Javascript 错误“...字符串未被识别为有效日期时间”。
我知道为什么会出现错误。有没有办法使用扩展器来控制用户输入的内容而不验证或转换输入?
【问题讨论】:
我有一个 asp.net 文本框和一个 MaskedEditExtender 控件。文本框用于日期输入。 MaskedEditExtender 具有 MaskType="Date" Mask="99/99/9999"。
当表单以无效日期提交时,浏览器会显示 Javascript 错误“...字符串未被识别为有效日期时间”。
我知道为什么会出现错误。有没有办法使用扩展器来控制用户输入的内容而不验证或转换输入?
【问题讨论】:
阻止表单以无效日期提交。使用 MaskedEditValidator
【讨论】:
在你的文本框上设置一个按键功能。
验证按下的键是否为数字 String.fromCharCode(event.which) 或 event.keycode (ie or FF)
然后可以检查文本框是否包含有效的代码和格式。
如果无效,您可以设置为有效的默认值,或者只是通过使用来阻止按键 防止默认()
如果无效格式也可以禁用提交按钮....
祝你好运
【讨论】:
不要将掩码类型指定为“日期”,这应该会阻止此错误。
【讨论】: