我用的是ajax实现的
前台: <asp:ScriptManager ID="ScriptManager1" runat="server"> </asp:ScriptManager> <asp:Timer ID="Timer1" runat="server" Interval="10" OnTick="Timer1_Tick"> </asp:Timer> <asp:TextBox ID="TextBox1" runat="server" MaxLength="50"></asp:TextBox> <asp:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="Conditional"> <ContentTemplate> <asp:Label ID="Label1" runat="server" Text="Label" ForeColor="Red"></asp:Label> </ContentTemplate> <Triggers> <asp:AsyncPostBackTrigger ControlID="Timer1" EventName="Tick" /> </Triggers> </asp:UpdatePanel> 后台: protected void Timer1_Tick(object sender, EventArgs e) { Label1.Text = "您还可以输入" + (50 - TextBox1.Text.ToString().Length) + "字"; } 希望可以帮助您 可以,把Label1.Text = "您还可以输入" + (50 - TextBox1.Text.ToString().Length) + "字"; 换成: Label1.Text = "您还可以输入" + (50 - System.Text.Encoding.Default.GetByteCount(TextBox1.Text.ToString())) + "字";
转载于:https://blog.51cto.com/chevalier0y/649154