本文提供一段JavaScript代码,用于在文本框输入时过滤特殊字符。通过onkeypress事件触发验证函数,利用正则表达式检测并拦截如*、&、\等非法字符,确保输入内容符合命名规范。
代码实现如下所示:
JavaScript过滤特殊字符实现代码<script>
function TextValidate() {
var code;
var character;
var err_msg = "文件夹名稱不能包含下列字符之一:\n \\ / : * ? \" < > | & , ";
if (document.all)
{
code = window.event.keyCode;
}
else {
code = arguments.callee.caller.arguments[0].which;
}
var character = String.fromCharCode(code);
var txt = new RegExp("[\\*,\\&,\\\\,\\/,\\?,\\|,\\:,\\<,\\>,\"]");
if (txt.test(character)) {
alert(err_msg);
if (document.all) {
window.event.returnValue = false;
}
else {
arguments.callee.caller.arguments[0].preventDefault();
}
}
}
</script>ASP.NET TextBox控件集成方法
<asp:TextBox ID="txtFolderNameEng" CssClass="frmTxt" runat="server" MaxLength="200" onkeypress="TextValidate()" >
在TextBox控件的onkeypress事件中调用上述方法即可完成过滤。
该逻辑可限制输入*、&、\、/、?、|、<、>等符号。若需限制更多特殊符号,只需在var txt = new RegExp("[\\*,\\&,\\\\,\\/,\\?,\\|,\\:,\\<,\\>,\"]");
正则表达式中添加对应字符即可。