中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

IsPostBack的原理是什么

發布時間:2021-07-24 09:41:14 來源:億速云 閱讀:135 作者:chen 欄目:開發技術

本篇內容主要講解“IsPostBack的原理是什么”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“IsPostBack的原理是什么”吧!

IsPostback的原理
--------------------------------------------------------------------------------

一步一步讓你看明白。。

先說說吧,然后在上代碼。ispostback:就是判斷頁面是首次加載的,還是數據回發(有get或者post請求過的)后的頁面。上代碼吧,直觀點。

--------------------------------------------------------------------------------

1.asp.net頁面

--------------------------------------------------------------------------------

復制代碼 代碼如下:


<body>
    <form id="form1" runat="server">
    <div>
        <asp:Button ID="Button1" runat="server" Text="Button" />
    </div>
    </form>
</body>

復制代碼 代碼如下:


protected void Page_Load(object sender, EventArgs e)
        {
            if (IsPostBack)
            {
                Response.Write("這是回發后的頁面!"); //點擊button1控件后出現這個
            }
            else
            {
                Response.Write("這是首次加載的頁面!"); //第一次預覽出現這個
            }
        }


2.html頁面
--------------------------------------------------------------------------------

(1)由于是純粹的html頁面,即便點擊提交也無法,回發數據,也就是html頁面無法獲取回發過來的值。所以ispostback為false。

--------------------------------------------------------------------------------

復制代碼 代碼如下:


<form action="WebForm1.aspx" method="post">
<input id="Submit1" type="submit" value="submit" />
</form>

復制代碼 代碼如下:


protected void Page_Load(object sender, EventArgs e)
        {
            if (IsPostBack)
            {
                Response.Write("這是回發后的頁面!");
            }
            else
            {
                Response.Write("這是首次加載的頁面!"); //第一次預覽出現這個,點擊submit控件后還出現這個
            }
        }


(2)這里加了一個隱藏的viewstate,回發過來的數據存放在viewstate,完成了數據回發,ispostback的值也就為true。如果你疑惑如果下次還想要首次加載的數據怎么辦,我告訴你,下次讀取數據直接從viewstate中讀取,不用再次發出請求。

--------------------------------------------------------------------------------

復制代碼 代碼如下:


<form action="WebForm1.aspx" method="post">
<input type="hidden" name="__viewstate" />
<input id="Submit1" type="submit" value="submit" />
</form>

復制代碼 代碼如下:


protected void Page_Load(object sender, EventArgs e)
        {
            if (IsPostBack)
            {
                Response.Write("這是回發后的頁面!"); //點擊submit控件后又出現這個。
            }
            else
            {
                Response.Write("這是首次加載的頁面!"); //第一次預覽出現這個。
            }
        }


小結:其是asp.net頁面中也有一個隱藏的viewstate字段,通過在頁面上查看源代碼就能看出來,一般為了減少服務器的壓力,我們通常會把viewstate禁用掉,那么將不會用到ispostback判斷是否是數據回發過的頁面,那將每次執行以下后臺代碼,如果是讀取數據庫中的數據,那么也將每次都要讀取一下,這里你可能會擔心數據庫的壓力過大,這里我們還有另外的解決辦法,而并非使用viewstate,那就是使用緩存技術解決這里的問題。

到此,相信大家對“IsPostBack的原理是什么”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

芒康县| 绥滨县| 荥经县| 浪卡子县| 万载县| 呼图壁县| 交城县| 会同县| 颍上县| 张家口市| 报价| 南雄市| 虎林市| 屏山县| 萍乡市| 红河县| 当涂县| 富宁县| 鸡东县| 梓潼县| 新乐市| 青冈县| 惠州市| 清水县| 法库县| 嘉禾县| 黄龙县| 平罗县| 宁河县| 原平市| 前郭尔| 河间市| 崇文区| 比如县| 金乡县| 广水市| 清水河县| 宁陕县| 稻城县| 宜春市| 陇西县|