<span id="mktg5"></span>

<i id="mktg5"><meter id="mktg5"></meter></i>

        <label id="mktg5"><meter id="mktg5"></meter></label>
        最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
        問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
        當前位置: 首頁 - 科技 - 知識百科 - 正文

        關于前臺調用后臺事件__doPostBack函數

        來源:懂視網 責編:小采 時間:2020-11-27 22:45:33
        文檔

        關于前臺調用后臺事件__doPostBack函數

        關于前臺調用后臺事件__doPostBack函數:這里需要提一下的是,asp.net編程提供了服務端控件和客戶端控件的說法,其實還是脫離不了HTML的本質,客戶端和服務端需要交互必須要提交,提交有兩種方式get和post,get就是通過向服務端發送連接地址,服務端通過地址的參數來獲得信息的,一般這些參數都是明文
        推薦度:
        導讀關于前臺調用后臺事件__doPostBack函數:這里需要提一下的是,asp.net編程提供了服務端控件和客戶端控件的說法,其實還是脫離不了HTML的本質,客戶端和服務端需要交互必須要提交,提交有兩種方式get和post,get就是通過向服務端發送連接地址,服務端通過地址的參數來獲得信息的,一般這些參數都是明文

        這里需要提一下的是,asp.net編程提供了服務端控件和客戶端控件的說法,其實還是脫離不了HTML的本質,客戶端和服務端需要交互必須要提交,提交有兩種方式get和post,get就是通過向服務端發送連接地址,服務端通過地址的參數來獲得信息的,一般這些參數都是明文,能在瀏覽器地址欄看到。而post是通過表單的input等元素提交到服務端的頁面的,這些數據一般是看不到的。asp.net的服務端控件其實就是對一般的HTML控件做了個包裝,大體是通過隱藏控件提供控制的參數的。 
        這里介紹一個常用的函數_doPostBack,這個函數如果如果是ASP.Net render出來的頁面就是自動產生這個函數,比如有帶autopostback屬性的控件,且其屬性為true的頁面,帶編輯列的datagrid頁面。 
        __doPostBack是通過__EVENTTARGET,__EVENTARGUMENT兩個隱藏控件向服務端發送控制信息的,__EVENTTARGET為要調用控件的名稱,如果要調用的控件是子控件,用''$'或':'分割父控件:子控件,__EVENTARGUMENT是調用事件時的參數 
        下面演示下如何調用后臺事件: 
        1.新建工程 
        2.拖入一個服務端Button1,一個DropDownList1和一個客戶端Button 
        3.設置DropDownList1的AutoPostBack屬性為True,Button1的Visible為False 
        4.雙擊Button1,在事件里寫下Response.Write("hello:" ); 
        5.頁面的HTML里找到客戶端Button,寫入onclick="__doPostBack('Button1','')" 
        6.編譯,運行,點擊Button是不是出現了"Hello" 
        7.查看源代碼,發現里面多了下面行 
        代碼如下:
        <script language="javascript">  
        <!--  
        function __doPostBack(eventTarget, eventArgument) {  
        var theform;  
        if (window.navigator.appName.toLowerCase().indexOf("netscape") > -1) {  
        theform = document.forms["Form1"];  
        }  
        else {  
        theform = document.Form1;  
        }  
        theform.__EVENTTARGET.value = eventTarget.split("$").join(":");  
        theform.__EVENTARGUMENT.value = eventArgument;  
        theform.submit();  
        }  
        // -->  
        </script> 

        以及兩個隱藏控件 
        代碼如下:

        <input type="hidden" name="__EVENTTARGET" value="" />  
        <input type="hidden" name="__EVENTARGUMENT" value="" /> 

        值得注意的是,_doPostPack的第一個參數是大小寫不敏感的 

        細心的人會發現,在__doPostBack里,提交調用的是theform.submit(),這樣就導致對Form的onsubmit事件校驗失效了,幸好這個問題在asp.net 2.0已經修復了。這里提供一個替換的解決辦法,在Form的最下面插入下面的代碼,這段代碼在保證不管是不是render出來的頁面均有效  
        代碼如下:
        <script language="javascript"> 
        <!-- 
        function __doPostBack_Ex(eventTarget, eventArgument)  

        var theform; 
        if (window.navigator.appName.toLowerCase().indexOf("netscape") > -1) { 
        theform = document.forms[0]; 

        else { 
        theform = document.forms[0]; 

        if(!theform.__EVENTTARGET) 
        {  
        theform.appendChild(document.createElement("<input type='hidden' name='__EVENTTARGET'>")); 

        if(!theform.__EVENTARGUMENT) 
        {  
        theform.appendChild(document.createElement("<input type='hidden' name='__EVENTARGUMENT'>"));  

        theform.__EVENTTARGET.value = eventTarget.split("$").join(":"); 
        theform.__EVENTARGUMENT.value = eventArgument; 
        if ((typeof(theform.onsubmit) == "function"))  

        if(theform.onsubmit()!=false) 

        theform.submit();  


        else 
        {  
        theform.submit();  

        function __doPostBack(eventTarget, eventArgument) 

        __doPostBack_Ex(eventTarget, eventArgument); 



        // --> 
        </script> 

        聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

        文檔

        關于前臺調用后臺事件__doPostBack函數

        關于前臺調用后臺事件__doPostBack函數:這里需要提一下的是,asp.net編程提供了服務端控件和客戶端控件的說法,其實還是脫離不了HTML的本質,客戶端和服務端需要交互必須要提交,提交有兩種方式get和post,get就是通過向服務端發送連接地址,服務端通過地址的參數來獲得信息的,一般這些參數都是明文
        推薦度:
        標簽: 后臺 函數 調用
        • 熱門焦點

        最新推薦

        猜你喜歡

        熱門推薦

        專題
        Top
        主站蜘蛛池模板: 国产亚洲免费的视频看| 又粗又大又硬又爽的免费视频| 亚洲VA中文字幕无码毛片| 国产精品综合专区中文字幕免费播放| 在线观看人成视频免费| 亚洲最大av资源站无码av网址| 免费无码A片一区二三区| 亚洲资源最新版在线观看| 久久久久国色AV免费看图片| 亚洲色www永久网站| 日本免费人成黄页网观看视频| 亚洲AV噜噜一区二区三区| 国产中文字幕免费观看| 色吊丝性永久免费看码| 在线精品亚洲一区二区小说| 182tv免费视频在线观看| 亚洲狠狠狠一区二区三区| 91视频国产免费| 边摸边脱吃奶边高潮视频免费| 亚洲国产高清精品线久久| 日韩a级无码免费视频| 亚洲视频在线观看不卡| 成年女人男人免费视频播放| 日韩少妇内射免费播放| 久久久无码精品亚洲日韩蜜桃| 美女视频黄是免费的网址| 亚洲A∨精品一区二区三区下载| 亚洲日本中文字幕一区二区三区| 男人的天堂网免费网站| 亚洲videos| 2048亚洲精品国产| 中文字幕成人免费视频| 亚洲精品美女久久7777777| 亚洲日韩一页精品发布| 日本在线高清免费爱做网站| 女bbbbxxxx另类亚洲| 亚洲av无码专区国产乱码在线观看 | 亚洲欧美成aⅴ人在线观看| 爱情岛论坛网亚洲品质自拍| 2019中文字幕免费电影在线播放| 亚洲成av人在线观看网站|