Character Counter for Multiline Textbox

Does anyone know how to modify the javascript below in order for this character counter to work with a multiline textbox rather than a textarea?

This is the control I want to use:

***************
<asp:TextBox id="Description2" runat="server" Height="136px" Width="352px" TextMode="MultiLine"
                  MaxLength="255"></asp:TextBox>
***************

This is the script and html that is working:

***************

<script language="Javascript">

function taLimit() {
      var taObj=event.srcElement;
      if (taObj.value.length==taObj.maxLength*1) return false;
}

function taCount(visCnt) {
      var taObj=event.srcElement;
      if (taObj.value.length>taObj.maxLength*1) taObj.value=taObj.value.substring(0,taObj.maxLength*1);
      if (visCnt) visCnt.innerText=taObj.maxLength-taObj.value.length;
}
</script>

<form id="Form1" method="post" runat="server">
         <table>
      <tr>
            <td>
                            <font>Maximum Number of characters for this text box is 255.<br>
                                     <TEXTAREA runat="server" onkeypress="return taLimit()" onkeyup="return taCount                     (myCounter)"  name="Description" rows="7" wrap="physical" cols="40" maxLength="255"></TEXTAREA>
<br>
                        You have <B><SPAN id="myCounter">255</SPAN></B> characters remaining for your description...</font>
                     </td>
              </tr>
 </table>
</form>

***************
GeznaAsked:
Who is Participating?
 
David H.H.LeeConnect With a Mentor Commented:
Gezna ,
For your information, the MaxLength property has no effect in a multi-line textbox. This property only work at SingleLine/Password Mode.
However, you can make this modification to adapt with your existing code :

code-behind
--------------------------
   Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        'Put user code to initialize the page here
        Description2.Attributes.Add("onkeypress", "javascript:return taLimit2('" & Description2.MaxLength & "');")
        Description2.Attributes.Add("onkeyup", "javascript:return taCount2(myCounter,'" & Description2.MaxLength & "');")
    End Sub

javascript
-------------------------
function taLimit2(maxValue) {
     var taObj=event.srcElement;
     if (taObj.value.length==maxValue*1) return false;
}

function taCount2(visCnt,maxValue) {
     var taObj=event.srcElement;
     if (taObj.value.length>maxValue*1) taObj.value=taObj.value.substring(0,maxValue*1);
     if (visCnt) visCnt.innerText=maxValue-taObj.value.length;
}

or
You can check this link if you interest :
http://www.codeproject.com/aspnet/textlengthvalidator.asp

Regards
x_com
0
 
mmarinovCommented:
Hi,

just an addition, the multiline asp:textbox control is rendered as textarea in html

Regards,
B..M
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.