是否可以将字符序列放在Asp.NET中的Filtered TextBox Extender中?我的猜测不是,但我很好奇。我希望用户能够输入字符(例如&和#),但不能输入无效的序列(例如&#)。
为什么不使用正则表达式?因为在提交表单时,所有字段都将传递到服务器...包括不属于验证组的字段。这些字段不会被检查,可能会触发“一个有潜在危险的Request.Form值......”,也就是HttpRequestValidationException。并且防止该消息就是这一点。我宁愿用正则表达式验证器告诉用户什么他们做错了......但我会满足于阻止他们输入坏字符(&#,<,>)。
编辑:一种事后的想法,但如果有一种更好的方法可以阻止所有TextBox包含字符,那就太棒了!
答案 0 :(得分:0)
您可以为所有文本框设置一个onkeydown函数,并检查按下的字符,如果它无效则只删除最后一个字符。另外,对于组合字符串,您只需检查以前的字符是否无效,然后删除所有字符串。
该类功能的一个例子是:
function checkKey(event) {
var code = event.keyCode;
// code is the ascii number of the key.
}