我尝试使用jquery字母数字插件http://itgroup.com.ph/alphanumeric/并且它工作正常。问题是当我粘贴
此文本!@#$%^&*()_67890-qwertyuiopasdfghjkl'zxcvbnm,.
文本框接受了它。
这是我的代码:
$("#<%=txtAddCompanyName.ClientID%>").alphanumeric({ allow: "'-., " });
我尝试将我的代码更改为如下所示,但它无效。
document.getElementById("<%=txtAddCompanyName.ClientID%>").onpaste = function() {
$("#<%=txtAddCompanyName.ClientID%>").alphanumeric({ allow: "'-., " });
};
有什么想法吗?
答案 0 :(得分:0)
<强>更新强>
在alphanumeric.js
上查找$(this).keypress
(
function (e)
{
if (!e.charCode) k = String.fromCharCode(e.which);
else k = String.fromCharCode(e.charCode);
if (ch.indexOf(k) != -1) e.preventDefault();
if (e.ctrlKey&&k=='v') e.preventDefault();
}
);
然后将keypress
更改为keydown
至少会阻止粘贴值...
原始回答
尝试任何一个......
document.getElementById("<%=txtAddCompanyName.ClientID%>").onpaste = function() {
$("#<%=txtAddCompanyName.ClientID%>").trigger('keypress');
};
或
document.getElementById("<%=txtAddCompanyName.ClientID%>").onpaste = function() {
$("#<%=txtAddCompanyName.ClientID%>").trigger('keydown');
};
或
document.getElementById("<%=txtAddCompanyName.ClientID%>").onpaste = function() {
$("#<%=txtAddCompanyName.ClientID%>").trigger('keyup');
};