我只是想知道为什么在相应的Web浏览器代码中无法看到控件的ASP.NET代码片段?
例如,asp.net代码:
asp:Button ID="Button1" runat="server" style="margin-left: 427px" Text="Submit"
浏览器代码:
input type="submit" name="ctl00$ContentPlaceHolder1$Button1" value="Submit"
id="ContentPlaceHolder1_Button1" style="margin-left: 427px"
答案 0 :(得分:1)
前缀为“asp:”的标签由服务器端逻辑处理,永远不会进入客户端。服务器将它们转换为HTML结构。
答案 1 :(得分:1)
Asp.Net是一个用于构建网页的框架,必须将其呈现为标准HTML页面 - 否则,它们将无法在浏览器中使用。
因此,在将页面输出到客户端之前,任何特定的ASP.NET标记都会被CLR解释和替换。
答案 2 :(得分:1)
由于ASP.NET是服务器端Web应用程序框架,因此无法查看代码。如果没有对服务器本身的物理或远程访问,您将无法看到代码。
理论上你也可能错误地配置IIS服务器来显示源文件,这会导致它们显示而不是编译,但不知道为什么有人会这样做。默认情况下,IIS不会显示它们。
答案 3 :(得分:0)
基本上,ASP.NET是基于单一表单模型的Web框架,所有服务器控件都应放在服务器上运行的表单中。从ASP.NET 2.0到现在,您也可以使用多个表单,但是,一个表单在运行时将处于活动状态。
将生成<asp:Button ID="something" runat="server"></asp:Button>
的ASP.NET服务器控件<input type="button" id=""></input>
- 一个唯一的ID由ASP.NET框架生成,并由 ctl100 启动。