2012-12-11 143 views
2

是否可以在一個aspx頁面下將不同的aspx文件合併或引入內容?但是,我希望在不將aspx轉換爲ascx的情況下實現它,因此不需要用戶控制。將多個asp.net頁面合併爲一個頁面

注:我願意使用客戶端腳本,如Javascript或Jquery。不,這不是重複的of

編輯:即使這似乎是一個糟糕的設計理念,這是我想要的功能。所有頁面應該成爲單個頁面的內容,忽略所有單獨的CSS和Javascript。

回答

3

簡短的回答是,你不能這樣做,如果你已經達到了你需要這樣做的程度,那麼你的網頁設計就很糟糕。爲什麼?由於整個頁面不僅包含內容,還包含CSS,JavaScript,標題,標題等,這些內容都是獨一無二的,您不能與其他頁面混合在一起,解決javascript和css衝突等問題。例如。 該頁面的最終標題是什麼?等等。

,你有另一種選擇是:

  • 使用iframe's
  • 使用的代碼背後動態渲染頁面,並添加它的佔位符。
2

您可以使用HTML frameset將頁面劃分爲不同的框架,每個框架都可以有一個ASPX頁面作爲其源。

+0

的標籤不支持HTML5。 –

+0

@KeyBrdBasher相當正確,但框架的渲染正在[定義](http://www.whatwg.org/specs/web-apps/current-work/multipage/rendering.html#frames-and-framesets)爲HTML5,所以我希望它可以在所有當代瀏覽器中運行。 –

0

除Aristos和michielvoo建議的方法外,另一種方法是使用JQuery .load()方法。爲頁面顯示不同的內容持有者,並使用JQuery選擇器將這些頁面的HTML內容設置爲內容持有者。

命中率。到jQuery文檔

此方法是從server.When取數據的 成功的響應被檢測.load()設置 匹配元素的所返回的數據的HTML內容的最簡單的方法。

$('#result').load('ajax/test.html'); 
+1

.load方法將加載包括asp.net隱藏字段在內的所有html。其中包含視圖狀態的值。並且您的頁面可能會中斷,因爲會有多個隱藏字段,並且名稱_hidded –

+0

同意!它甚至會導致在使用幀時不會發生的Css衝突,但是,這也是實現目標的一種方式(並非完美,而是一種方式)。 –

+0

擺脫這種衝突的一種方法是把你的CSS和腳本放在主頁上。創建一個像div一樣的容器並僅加載該div。如下所示$('#result')。load('ajax/test.html #container'); –

0

你可以簡單地追加頁面給對方,我這樣做是爲全國Craigslist的搜索。

我所有的結果添加到一個單一頁面,則我認爲在瀏覽器

您可以使用一個列表框,瀏覽器控制該頁面,然後將文字附加到一個單一的文件

相關問題