假设我在客户端运行的ASP.NET页面中有一个脚本:
<script runat="server">function foo(){
//Some javascript code
}
</script>
我的问题是,我可以(或任何查看此网站的人)从客户端覆盖此函数foo:
function foo(){
//my JavaScript code
}
这样它将在服务器上运行。
答案 0 :(得分:0)
我会说不,因为那个脚本(C#,我假设)将在服务器上运行,但为什么你在asp.net页面中声明了这个?
将它放在容器(例如类)中会不会更好? (可能是经典ASP.NET WebForms的代码隐藏文件,在MVC的模型或控制器中)
查看https://msdn.microsoft.com/en-us/library/f0111sbh(v=vs.100).ASPX
答案 1 :(得分:0)
属性runat="server"
仅指示ASP.NET在将结果返回到客户端浏览器之前在服务器上预解析该元素(及其子元素(如果有))。
一旦到达那里(客户端浏览器):
希望这是有道理的。
P.S。我知道这是2016年以来的一个问题