ASP.net Textbox的技巧使用

时间:2022-09-17 18:19:24

①、大家在做Web开发的时候,可能也会遇到之前我所遇到的问题,在使用TextBox控件时,控件的边缘不能被背景图片完全覆盖掉,如图1:

ASP.net Textbox的技巧使用

因为Textbox解析后也是html—Text控件,而Text控件是默认有边,即是border:1px solid #000;

所以只要为Textbox控件加上如下的一小句CSS就可以了,即是“border:0px”,最后效果如图2:

ASP.net Textbox的技巧使用

 

②、大家在做Web开发时,不知道大家有没有发现,当将Textbox控件的TextMode = "MultiLine",其实MaxLength已经失效了。

因为Textbox的属性TextMode为"MultiLine"时,其实解析过后是html—textarea控件,这个html控件是没有MaxLength属性的。

如果这时还想限制其输入长度:可以设置如下属性:

<asp:TextBox ID = "reply_note" runat = "server" TextMode = "MultiLine" onkeyup="this.value = this.value.slice(0, 1000)">

③、大家在做某些输入框时,可能希望做到得到焦点时触发某个事件,失焦时触发某个事件:

我写了两个JS刚好满足了如下效果:

复制代码代码如下:

<script type="text/javascript"> 
  //得到焦点时触发事件 
  function onFocusFun(element, elementValue) { 
   if (element.value == elementValue) { 
   element.value = ""; 
   element.style.color = ""; 
   } 
  } 

  //离开输入框时触发事件 
  function onblurFun(element, elementValue) { 
   if (element.value == '') { 
   element.style.color = "#808080"; 
   element.value = elementValue; 
   } 
  } 
  </script> 


然后,如下在Textbox控件中引用它们就可以了: 

复制代码代码如下:

<asp:TextBox ID = "reply_note" runat = "server" Text="帖子回复,输入字数限制为1000字" ForeColor = "#808080" OnFocus="onFocusFun(this,'帖子回复,输入字数限制为1000字')" 
OnBlur="onblurFun(this,'帖子回复,输入字数限制为1000字')"></asp:TextBox> 


这就是我最近开发的一点小技巧,可能网上已经写过类似的了,但这些方法,我个人觉得还是比较简单易懂,希望可以帮到大家。 

如果大家有其他类似的小技巧,可以留言一起交流一下。