国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > .NET > 正文

解析ASP.NET 2.0創建母版頁引來的麻煩_.Net教程

2024-07-10 12:51:00
字體:
來源:轉載
供稿:網友

推薦:解讀ASP.NET 2.0跨網頁提交的三種方法
當在一個ASP.NET Web頁面中進行操作時,在默認情況下向當前頁進行提交。這種行為在ASP.NET出現之前并沒有什么關系,但在ASP.NET中,當我們想向另外一個Web頁提交一個Web Form時該如何做呢?在ASP.NET1.0中這個問題變得很難解決,但在ASP.NET 2.0中為開發人員

一、問題提出

由于總體排版和設計的需要,我們往往創建母版頁來實現整個網站的統一性,最近我由于統一性的需要,把原來整個項目單獨的頁面全部套用了母版頁。但是出現了一個錯誤……在這里記錄一下,方便大家參考。

二、抽象模型

由于整個頁面內容過多,所以我把這個頁面中最為本質的問題抽象出來。

原來單一頁面,就是利用按鈕觸發JS事件,在文本域中插入“(_)”功能,其實現代碼如下:

以下是引用片段:

以下為引用的內容:
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" > <head runat="server"> <title>單一頁面抽象模型-YJingLee</title> <script language="javascript" type="text/javascript"> // <!CDATA[ function insert() { document.getElementById("txt").value=document.getElementById("txt").value "(__)";return; } // ]]> </script> </head> <body> <form id="form1" runat="server"> <div> <textarea id="txt" runat="server" name="txt" rows="10" cols="50"></textarea> <asp:Button ID="btnInsert" runat="server" Text="服務器端插入(_)" OnClientClick="insert();"/> <input id="btnInsert2" name="insert" onclick="insert();" type="button" value="客戶端插入(_)" runat="server"/></div> </form> </body> </html>

上述頁面可以正常使用。后來使用模板頁后,其代碼如下:

以下是引用片段:

以下為引用的內容:
<%@ Page Language="C#" MasterPageFile="~/MasterPage.master" AutoEventWireup="true" CodeFile="Default2.aspx.cs" Inherits="Default2" Title="使用母版頁面抽象模型-YJingLee" %> <asp:Content ID="Content1" ContentPlaceHolderID="ContentPlaceHolder1" Runat="Server"> <script language="javascript" type="text/javascript"> // <!CDATA[ function insert() { document.getElementById("txt").value=document.getElementById("txt").value "(__)"; return; } // ]]> </script> <div> <textarea id="txt" runat="server" name="txt" rows="10" cols="50"></textarea> <asp:Button ID="btnInsert" runat="server" Text="服務器端插入(_)" OnClientClick="insert();"/> <input id="btnInsert2" name="insert" onclick="insert();" type="button" value="客戶端插入(_)" runat="server"/></div> </asp:Content>

當打開后按下按鈕出現了“Microsoft JScript 運行時錯誤: 'document.getElementById(...)' 為空或不是對象”。這是什么原因呢?原來好好的,怎么套用個母版頁就出現這個奇怪的問題呢?困擾了好久,和朋友討論了一下,終于找到了答案……

三、分析本質

原來我們仔細看看其生成的HTML代碼:

單一頁面:

以下是引用片段:

以下為引用的內容:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" > <head><title> 單一頁面抽象模型-YJingLee</title> <script language="javascript" type="text/javascript"> // <!CDATA[ function insert() { document.getElementById("txt").value=document.getElementById("txt").value "(__)";return; } // ]]> </script> </head> <body> <form name="form1" method="post" action="Default.aspx" id="form1"> <div> <input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE" value="/wEPDwUKMTEzMjE5NDA0NWRkKlEH1jSXJkIbnUaP2d9Dra8LQEk=" /> </div> <div> <textarea name="txt" id="txt" rows="10" cols="50"></textarea> <input type="submit" name="btnInsert" value="服務器端插入(_)" onclick="insert();" id="btnInsert" /> <input name="btnInsert2" type="button" id="btnInsert2" onclick="insert();" value="客戶端插入(_)" /></div> <div> <input type="hidden" name="__EVENTVALIDATION" id="__EVENTVALIDATION" value="/wEWBALVid/5DQKShrDCCQL5w9POBQL5w4vOBZPGqxUU/yvoKTqG8k uG8YroGTv" /> </div></form> </body> </html>

分享:揭秘設計ASP.NET應用程序的七大妙招
隨著微軟.NET的流行,ASP.NET越來越為廣大開發人員所接受。作為ASP.NET的開發人員,我們不僅需要掌握其基本的原理,更要多多實踐,從實踐中獲取真正的開發本領。在我們的實際開發中,往往基本的原理滿足不了開發需求,我們更多的要積累一些開發技巧,本文就

共2頁上一頁12下一頁
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 白沙| 英超| 内丘县| 沾化县| 湖北省| 邢台县| 靖安县| 天祝| 萝北县| 遂平县| 丽水市| 延川县| 寻乌县| 甘孜| 宜黄县| 泸定县| 繁峙县| 乐平市| 连城县| 福建省| 大英县| 年辖:市辖区| 许昌县| 家居| 中江县| 视频| 平顺县| 家居| 祁东县| 温宿县| 富蕴县| 吴忠市| 城步| 岗巴县| 聂拉木县| 兰溪市| 靖州| 孟州市| 八宿县| 肇州县| 桂平市|