【发布时间】:2010-11-22 23:41:06
【问题描述】:
我正在尝试使用asp:
<asp:TextBox ID="txtInput" runat="server" TextMode="MultiLine"></asp:TextBox>
我想要一种方法来指定maxlength 属性,但显然multiline textbox 是不可能的。我一直在尝试为 onkeypress 事件使用一些 JavaScript:
onkeypress="return textboxMultilineMaxNumber(this,maxlength)"
function textboxMultilineMaxNumber(txt, maxLen) {
try {
if (txt.value.length > (maxLen - 1)) return false;
} catch (e) { }
return true;
}
虽然这个 JavaScript 函数工作正常,但问题在于,在写入字符后,它不允许您删除和替换其中的任何字符,这种行为是不希望的。
你知道我可以在上面的代码中改变什么来避免这种情况或任何其他方法来绕过它吗?
【问题讨论】:
-
尝试了所有答案,scottyboiler 的答案绝对是接近理想的解决方案。所有其他都有小问题(不要使用复制粘贴,MaxLength 参数在 IE 中不起作用等)。
-
我在这里第二个@kape123。所有其他人都有失败。毕竟我们只是想阻止该字段超过给定的限制,并能够在限制内复制和粘贴!
-
@Fernando68 我意识到我没有链接答案 - 这是link to scottyboiler solution which is closest to idea - 其他人都有一些失败。
-
@kape123 - 领先于你,伙计! :)
标签: asp.net textbox multiline maxlength