<body>
<form runat="server" id="form1" method="post" action="test.aspx">
<div>
<input id="Text1" type="text" name="name1"/>
<input id="Submit1" type="submit" value="submit" />
<input id="Reset1" type="reset" value="reset" /></div>
</form>
</body>
以上代碼點擊按鈕的時候不能轉到test.aspx頁面,刪除runat="server"后就可以正常轉到test.aspx頁,而且能夠正常顯示
一個答主的解釋是這個樣子的 :
有了runat="server"別再加action了,兩個的提交方式都不一樣,action將form數據給了test.aspx頁面,而runat="server"直接回交服務器,處理數據,又以數據加密后的hidden屬性的input控件插入回去,實現表單的狀態保存~
如果test.aspx是跳轉到test.aspx頁面
runat="server指在服務器端運行,在進一步說就是你可以在頁面的.cs文件中直接使用
與之相對的,是在客戶端運行的情況,比如java腳本,是瀏覽器解析的:
有此語句的控件,轉換成對應的HtmlControl子類加入到頁面的控件集合,
對於沒有此語句的,直接寫入html中