我有一个只能包含500个字符的多行文本框。现在,我想向用户展示留下的字符数,因为他们在文本框中键入的情况与我们使用Twitter时的情况相同。如何在asp.net中显示多行文本框中留下的字符数?
请帮助
我有一个只能包含500个字符的多行文本框。现在,我想向用户展示留下的字符数,因为他们在文本框中键入的情况与我们使用Twitter时的情况相同。如何在asp.net中显示多行文本框中留下的字符数?
请帮助
你将不得不写一些js代码。
这里是简单snipptet:
<html><form name="form1"><input type="text" name="textArea" size="400" onkeyup="document.form1.count_display.value=document.form1.textArea.value.length;"><br/><input type="text" name="count_display"></form></body></html>
你可以改变计算显示左侧的人物,或者已经输入数量,因为你需要
让我们先创建一个多行TextBox。
<asp:TextBox ID="textTextBox" Text='<%# Bind("Text") %>' runat="server"
CssClass="text smsTextBox" TextMode="MultiLine" Height="100px"
MaxLength="500" >
</asp:TextBox>
<p>
<span id="remaining" class="remaining">500 characters remaining</span>
<span id="messages" class="messages">1 message(s)</span>
</p>
现在,将此项添加到JavaScript文件或将此项添加到Javascript到项目被呈示的页面上。 每次文档加载脚本运行
<script type="text/javascript">
$(document).ready(function() {
if (typeof $('.smsTextBox').val() !== "undefined") {
var $remaining = $('.remaining'),
$messages = $remaining.next();
var chars = $('.smsTextBox').val().length,
messages = Math.ceil(chars/500),
remaining = messages * 500 - (chars % (messages * 500) || messages * 500);
$remaining.text(remaining + ' characters remaining');
$messages.text(messages + ' message(s)');
}
});
$(document).ready(function() {
var $remaining = $('.remaining'),
$messages = $remaining.next();
$('.smsTextBox').keyup(function() {
var chars = this.value.length,
messages = Math.ceil(chars/500),
remaining = messages * 500 - (chars % (messages * 500) || messages * 500);
$remaining.text(remaining + ' characters remaining');
$messages.text(messages + ' message(s)');
});
});
</script>
编码愉快:-D
感谢您的代码,但文本框是asp.net控制不HTML控件。当然是 – HotTester 2010-04-06 12:29:33
。这只是样品。你可以粘贴客户端事件,它将工作相同 – Tamir 2010-04-06 13:33:28