Response.Write() 和 ClientScript.RegisterStartupScript() 有什么区别 谢谢。
最佳答案
Response.Write
方法可用于在页面的渲染阶段输出代码。 <%= %>
服务器标签是 <%Response.Write( )%>
的快捷方式.
如果您使用 Response.Write
从后面的代码开始,您将在页面开始呈现之前写入页面,因此代码将在 html 文档之外结束。尽管浏览器会执行代码,但它无法正常工作。在 doctype 标签之前添加一些东西会使浏览器忽略 doctype 并以怪癖模式呈现页面,这通常会破坏布局。此外,由于脚本在页面的任何内容存在之前运行,因此代码无法访问页面中的任何元素。
ClientScript.RegisterStartupScript
方法是将脚本动态添加到页面的首选方式。它将在表单末尾呈现脚本,这样它就不会破坏 html documnet,并且它可以访问表单中的元素。
此外,您还为每个脚本指定了一个标识,这意味着重复项已被删除。如果一个用户控件注册了一个脚本,并且您使用了多个用户控件实例,则该脚本只会在页面中呈现一次。
关于c# - Response.Write() 和 ClientScript.RegisterStartupScript() 的区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1926449/