當網頁上的某個伺服器控制項被設定為 AutoPostBack = true 時,代表該控制項的資料或內容改變時就會自動觸發 PostBack。
在預設的情況下其他控制項並不會受到影響,也就是說其內容值不會改變。
但若其他控制項是被<form role = “form”>包圍住,只要觸發 PostBack 就會導致其值被清空。如下
<form role="form"> <div class="form-group"> <label>ID</label> <div class="form-inline"> <asp:TextBox runat="server" class="required" ID="userPhoneNumber"/> </div> </div> </form>
最外層是 <form role = “form”> 導致只要觸發 PostBack 其中的 userPhoneNumber 的值就會清空。
如果在PostBack時發現某些控制項會自動清空,但又找不到其他邏輯。
不妨找找是不是外層被<form role = “form”> 包住了。