日期:2014-05-18  浏览次数:20412 次

TextBox MultiLine Maxlength
在MultiLine下Maxlength属性没用,但是我想控制TextBox的输入字数。
TextBox在DetailsView的TemplateField里面
我想用((TextBox)objDetailsView1.FindControl("objTextBox")).Text.ToString().Length得到长度
但是对objTextBox设置事件没有反应?

------解决方案--------------------
这个是不能拿maxlenght来控制的
一般做法为:
function controllenght()
{
var txt=document.getelementByID("txt");
if(txt.value.lenght>200)//这里控制maxlenght
{
keyCode==0;
}
}

在textbox加属性onkeypress=controllenght()
------解决方案--------------------
这种验证最好不要放在服务器端,否则,文本框内容每更改一次就刷一次页面,无论是性能还是用户友好性都太糟糕了,应该放在客户端
验证,具体做法是在绑定数据时候给文本控件加上js验证函数,

((TextBox)objDetailsView1.FindControl("objTextBox")).Attributes.Add("onpropertychange","javascript:if(this.value.length>100) alert(message);");