Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/36.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net 初始化HTML控件值:Javascript还是内联服务器标记更好?_Asp.net_Javascript - Fatal编程技术网

Asp.net 初始化HTML控件值:Javascript还是内联服务器标记更好?

Asp.net 初始化HTML控件值:Javascript还是内联服务器标记更好?,asp.net,javascript,Asp.net,Javascript,使用Javascript初始化不同HTML控件的值或编写内联标记,哪个更好/更易于维护 我正在写的当前页面有许多HTML控件,我担心使用内联ASP会使其无法维护。好吧。。。使用JS用值填充控件将使整个解决方案在无JS的环境中毫无用处。这不是webdev社区所说的“不引人注目” 由于您没有更好的定义(!),我会说使用内联渲染 如果你的页面中确实有数百万(我真的怀疑这个数字)的HTML控件,我会说你需要回到绘图板,重新设计解决方案。好吧。。。使用JS用值填充控件将使整个解决方案在无JS的环境中毫无用

使用Javascript初始化不同HTML控件的值或编写内联
标记,哪个更好/更易于维护


我正在写的当前页面有许多HTML控件,我担心使用内联ASP会使其无法维护。

好吧。。。使用JS用值填充控件将使整个解决方案在无JS的环境中毫无用处。这不是webdev社区所说的“不引人注目”

由于您没有更好的定义(!),我会说使用内联渲染


如果你的页面中确实有数百万(我真的怀疑这个数字)的HTML控件,我会说你需要回到绘图板,重新设计解决方案。

好吧。。。使用JS用值填充控件将使整个解决方案在无JS的环境中毫无用处。这不是webdev社区所说的“不引人注目”

由于您没有更好的定义(!),我会说使用内联渲染


如果你的页面中真的有数百万(我真的怀疑这个数字)的HTML控件,我会说你需要回到绘图板,重新设计解决方案。

如果你在ASP.Net页面中真的有很多HTML控件,你可能需要重新考虑你的设计。为什么不使用服务器控件


但是,您可以始终在HTML元素上使用
runtat=“server”
属性来有效地将它们转换为服务器端控件。然后,您可以用与ASP.Net控件大致相同的方式使用它们。不过,您可能需要注意添加额外的Viewstate。

如果ASP.Net页面中确实加载了大量HTML控件,您可能需要重新考虑您的设计。为什么不使用服务器控件


但是,您可以始终在HTML元素上使用
runtat=“server”
属性来有效地将它们转换为服务器端控件。然后,您可以用与ASP.Net控件大致相同的方式使用它们。不过,您可能需要注意添加额外的Viewstate。

无论采用何种方法,您都会遇到相同的问题:可维护性

我有一些遗留表单需要在调用之间记住一些字段,所以我有很多代码可能有点难看,但是如果你坚持一个标准,就不会变得太混乱

电子邮件(*):
问题是,当必须添加新控件时,它涉及大量的复制粘贴。您可以创建一个函数来构建它,并将代码重复保持在最低限度

<%= BuildHTMLInputControl("email"&i, "text", "E-Mail", true) %>
' Response: <label for="email1">E-Mail (*):</label><input name="email1" id="email1" type="text" value="Previous Value" />

'回复:电子邮件(*):
我没有做过这样的事情,因为我做过这样的小动作,还没有引起人们的关注

这样做的好处是,字段是在加载时填充的,没有内容闪烁,并且您对非Javascript用户非常友好,这是您应该做到的


唯一的区别是,使用javascript时,在文档的结尾(或者更确切地说是结尾)有大量的
document.getElementById()
,这会增加HTML文件的大小(这可能是一个问题)并且无法立即填充字段。

无论采用何种方法,您都会遇到相同的问题:可维护性

我有一些遗留表单需要在调用之间记住一些字段,所以我有很多代码可能有点难看,但是如果你坚持一个标准,就不会变得太混乱

电子邮件(*):
问题是,当必须添加新控件时,它涉及大量的复制粘贴。您可以创建一个函数来构建它,并将代码重复保持在最低限度

<%= BuildHTMLInputControl("email"&i, "text", "E-Mail", true) %>
' Response: <label for="email1">E-Mail (*):</label><input name="email1" id="email1" type="text" value="Previous Value" />

'回复:电子邮件(*):
我没有做过这样的事情,因为我做过这样的小动作,还没有引起人们的关注

这样做的好处是,字段是在加载时填充的,没有内容闪烁,并且您对非Javascript用户非常友好,这是您应该做到的

唯一的区别是,使用javascript时,在文档的结尾(或者更确切地说是结尾)有大量的
document.getElementById()
,这会增加HTML文件的大小(这可能是一个问题),并且无法立即填充字段

什么更好/更易于维护, 使用Javascript初始化 不同HTML控件的值 还是写内联标签

我也不会这样做。这听起来像老式的ASP,或者PHP或JSP类型的逻辑

ASP.NET模型使用页面上的控件,然后通过代码隐藏或内联代码(可能使用某种类型的数据绑定)设置这些控件的值。将显示逻辑从数据中分离出来更容易维护

什么更好/更易于维护, 使用Javascript初始化 不同HTML控件的值 还是写内联标签

我也不会这样做。这听起来像老式的ASP,或者PHP或JSP类型的逻辑


ASP.NET模型使用页面上的控件,然后通过代码隐藏或内联代码(可能使用某种类型的数据绑定)设置这些控件的值。将显示逻辑与数据分开是非常非常容易维护的。

JS自由环境现在非常少见。即使是智能手机也有JS。NoScript和公司防火墙等插件下载量的增加说明了另一个问题。如今,JS免费环境相当罕见。甚至智能手机也有JS。NoScript和公司防火墙等插件下载量的增加说明了另一个问题。我有类似的问题。在这种情况下,JS会更慢还是消耗更多的流量?当然,当JS执行客户端时,它会消耗更多的带宽。我有类似的问题。在这种情况下JS会慢很多还是会消耗更多的流量?当然会消耗更多的流量