我现在正在使用MultiLine Textbox
我想允许其中的所有字符,并且我还希望将文本框的限制设置为150个字符。所以我想使用正则表达式,所以任何人都可以帮助我。 我使用正则表达式:如何在asp.net中设置多行文本框的限制
"^[A-Za-z0-9\[email protected]#$%^&*()_+=-`~\\\]\[{}|';:/.,?><]*{1,150}$"
所有工作正常,但它并没有字符限制为150
在此先感谢。
我现在正在使用MultiLine Textbox
我想允许其中的所有字符,并且我还希望将文本框的限制设置为150个字符。所以我想使用正则表达式,所以任何人都可以帮助我。 我使用正则表达式:如何在asp.net中设置多行文本框的限制
"^[A-Za-z0-9\[email protected]#$%^&*()_+=-`~\\\]\[{}|';:/.,?><]*{1,150}$"
所有工作正常,但它并没有字符限制为150
在此先感谢。
换种方式 下面的代码可链接:
<title>title>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js">script>
<script type="text/javascript" src="MaxLength.min.js">script>
<script type="text/javascript">
$(function() {
//Normal Configuration
$("[id*=TextBox1]").MaxLength({ MaxLength: 10 });
//Specifying the Character Count control explicitly
$("[id*=TextBox2]").MaxLength(
{
MaxLength: 15,
CharacterCountControl: $('#counter')
});
//Disable Character Count
$("[id*=TextBox3]").MaxLength(
{
MaxLength: 20,
DisplayCharacterCount: false
});
});
script>
头>
<form id="form1" runat="server">
<div id="counter">
div>
<asp:TextBox ID="TextBox1" runat="server" TextMode="MultiLine" Width="300" Height="100"
Text="Mudassar Khan">asp:TextBox>
<br />
<br />
<asp:TextBox ID="TextBox2" runat="server" TextMode="MultiLine" Width="300" Height="100">asp:TextBox>
<br />
<br />
<asp:TextBox ID="TextBox3" runat="server" TextMode="MultiLine" Width="300" Height="100">asp:TextBox>
form>
体>
HTML>
您可以使用TextBox.MaxLength Property如果TextMode属性未设置为多行。 MaxLength property does not work for multiline textbox。
获取或设置文本框中允许的最大字符数。 您设置的值是 文本框中允许的最大字符数。默认值为0,表示该属性不是 集合。
<asp:TextBox ID="Value1" Columns="2" MaxLength="3" Text="1" runat="server"/>
如果你想让用户知道他是否超过 字符量他写道,你可以使用连接到 按键事件的JavaScript函数。该功能将测试输入的长度 ,并在达到最大值时取消字符渲染。
入住此:Set max length of MultiLine TextBox in ASP.Net
如果你想使用多行模式,然后使用Java的脚本和正则表达式的方式来实现这一目标,并按照以下参考链接:
你可以做到这方法:
<asp:TextBox Rows="5" Columns="80" ID="txtCommentsForSearch" MaxLength="10" onkeyDown="return checkTextAreaMaxLength(this,event,'10');" TextMode="multiLine" CssClass="textArea" runat="server"> </asp:TextBox>
// JS
// JScript File
function checkTextAreaMaxLength(textBox, e, length) {
var mLen = textBox["MaxLength"];
if (null == mLen)
mLen = length;
var maxLength = parseInt(mLen);
if (!checkSpecialKeys(e)) {
if (textBox.value.length > maxLength - 1) {
if (window.event)//IE
{
e.returnValue = false;
return false;
}
else//Firefox
e.preventDefault();
}
}
}
function checkSpecialKeys(e) {
if (e.keyCode != 8 && e.keyCode != 46 && e.keyCode != 35 && e.keyCode != 36 && e.keyCode != 37 && e.keyCode != 38 && e.keyCode != 39 && e.keyCode != 40)
return false;
else
return true;
}
个
参考文献:
ASP.NET - Limit number of characters in TextBox control
Limit Number Of Characters In an ASP.NET Multiline TextBox using jQuery
TextBox: Minimum and Maximum Character Length Validation using ASP.Net RegularExpression Validators
Limit the number of characters of a textbox
Specifying maxlength for multiline textbox
How to set maxlength for multiline TextBox?
asp text box limit number of characters?
这是很容易做到这一点:较新的浏览器支持textarea
的maxlength
属性元素(但不包括IE9和较早版本的Internet Explorer)。
你可以用javascript限制textarea
,或者如果你想显示“x chars remaining”(比如在SO中发表评论),至少可以得到字符数。
对于以前的浏览器,这个javascript会检查长度与maxlength并防止用户输入。但是,由于用户可能会通过复制和粘贴等方式破坏方法,因此使用keyup
截断任何溢出也是一个好主意。另外,如果数据进入服务器/数据库,在客户端绕过表单并直接上载POST数据的情况下截断和清理从客户端接收到的输入并不是一个坏主意,在这种情况下,maxlength
不起作用。
在ASP.NET中,标记看起来像:<asp:TextBox ID="txt" runat="server" TextMode="Multiline" ClientIDMode="Static" maxlength="150"/>
,但对于textarea
(TextMode =“Multiline”),maxlength
属性可能无法呈现(可能取决于您的ASP.NET版本)。您可以在标记中验证它是否被渲染。如果没有,你可能需要操作文本框的Attributes
在这样的代码隐藏:txt.Attributes["maxlength"] = "150";
(假设C#)
JS小提琴例如:http://jsfiddle.net/aymjsfdp/
// "maxlength" code for older browsers including IE9 and previous versions
var txt = document.getElementById('txt');
txt.onkeyup = function() {
var maxlength = parseInt(this.getAttribute("maxlength")) || 0;
if (maxlength > 0 && this.value.length > maxlength) {
this.value = this.value.substring(0, maxlength);
alert('text was truncated to ' + maxlength + ' characters.');
}
document.getElementById('length').innerHTML = this.value.length.toString();
};
txt.onkeydown = function() {
var maxlength = parseInt(this.getAttribute("maxlength")) || 0;
if (maxlength > 0 && this.value.length >= maxlength && (event.keyCode || event.which) > 49) {
return false;
}
};
TEXTAREA {
width: 300px;
height: 60px;
}
<div>Chars: <span id='length'></span>
</div>
<textarea id='txt' maxlength='150'></textarea>