重新认识Attributes.add

  昨天自己学习别人的编码,发现了 控件ID.Attributes.add("","");用法,于是自己查来看,中间闹了不少的笑话;

  首先自己就搜错了对象,C#里有 Attributes和Attribute(特性)这两个关键字,新人可千万不要弄混,切记切记!

  其次自己用 控件ID.Attributes.add("",""); 这个用法时,发现用它来给控件添加事件的方法屡试不爽,例如 控件ID.Attributes.add("onclick","alert("Error");"); ,可是当我想改变控件长宽等style属性的时候发现,控件ID.Attributes.add("width","80px"); 这样就不行了。

 遂拿到技术群里去讨论这个问题,经高手的指点发现自己确实忽略了重要的东西;

 在HTML中,服务器端控件的长宽等style属性是通过style="" 来控制的,即使用ASP.NET工具箱里控件,虽然可以在style外写 width=""来控制宽度等属性,

但是当我在浏览器中查看代码的时候发现,这个控件的属性设置还是写在style="width:80px"里的,被浏览器渲染成<input name="TextBox1" id="TextBox1" style="width: 768px;" type="text"/>

所以我们用 控件ID.Attributes.add("width","80px");的时候,就被浏览器渲染成了<input name="TextBox1" id="TextBox1" width= "768px" type="text"/>,这样当然没有效果;

如果需要在后台用Attributes的方式来改变控件的样式,我们需要这样写:控件ID.Attributes.style.add("","");方式。

切记切记

posted @ 2013-02-18 09:46  白菜帮子  阅读(418)  评论(0编辑  收藏  举报