使用常规的< input type =“text”>似乎是有利的.超过< asp:TextBox> ;.首先,当页面呈现时,< asp:TextBox>成为标准的< input type = text>.当我使用标准的< input type =“text”>我可以通过Request.Form [“Name”]轻松地通过服务器端代码检索它们的值.接下来当我动态地添加输入(通过javascript)我不能使用TextBox的我需要使用< inputs type =“text”>.最后渲染正常输入不会更快吗?如果我使用< asp:TextBox>进行编码,那么必须使用< input type =“text”>它只需要显示.
换句话说,当标准输入工作正常,如果不是更好的话,为什么要打扰所有的asp控件?
解决方法
What is the advantage to using an over using a standard
<input type=’text’>
?
>注意,您可以通过在控件中使用runat =“server”来访问代码隐藏中的任何HTML元素
>您可以访问文本框上的更多属性,而不是输入html元素
>您可以与其他ASP.NET控件(如验证器)一起使用文本框
>您可以比输入更容易地执行数据绑定
>与使用input和javascript相比,您可以更容易地将文本框附加到事件中,而且几乎毫不费力
比较总结
>更快更简单的编程
>与其他ASP.NET控件的兼容性
Next when I dynamiclly add inputs (via javascript) I can’t use TextBox’s I need to use
<inputs type=”text”>
.
无论您使用ASP.NET还是Javascript,动态添加的控件都会变得非常混乱.在需要时隐藏/显示控件更容易(或使用中继器或数据传输).
Finally wouldn’t it be faster to render the normal input? If I code with,that has to be rendered where if I use it simply needs to be displayed.
将ASP.NET与HTML / Javascript应用程序的速度进行比较,我认为不公平. ASP.NET旨在渲染ASP.NET控件,并且在ASP.NET中使用HTML控件不会有任何明显的性能提升.
ASP.NET vs HTML / Javascript
我觉得你的问题本质上相当于“为什么不用钉子上的砖,而不是锤子?” ASP.NET是一个框架,并构建了ASP.NET控件.它的目的是允许将事情编程得更快,更简单,同时抽象通常使用Javascript完成大部分事情(通常是微不足道的,重复的).