2010年8月24日 星期二

Masterpage 使用不同層程式目錄所產生問題

最近看到jquery出的一個layout的套件
http://layout.jquery-dev.net/demos.cfm
覺得還不錯 就套用到新的案子上面
我的做法是
使用Masterpage 套用jquery的layout
分為左、上、右
右邊則是開發人員coding的內容
由於是使用jquery的套件 勢必要在Masterpager載入以下套件
jquery-1.4.1.js
jquery.ui.all.js
jquery.layout.js
開發初期相當順利
但當我的page套用這個.master的時候
剛好我的page有用到jquery的套件 但居然不能繼承.master所引用的jquery-1.4.1.js
必須另外載入
這時發生問題 我同時在.master與我的page都載入jquery-1.4.1.js
就出錯了 我不確定是不是jquery layout的問題
因為我想辦法來繼承.master的jquery
抓了文發現了一個好東西

CSS部分不會有這樣的問題 只有 "Script" 才會
當下馬上解決我所有的問題
不過過了幾天又出現另一個問題
我在page頁面加入一個Menu元件時出現以下錯誤

無法修改 Controls 集合,因為控制項包含程式碼區塊 (例如 <% ... %>)

這時我立刻想到是src="<%=ResolveClientUrl...的問題
解決的辦法是 只要將我們需要事先載入的 Script 加到ScriptManager即可
就這麼簡單...







不過相對的 Script 會有先後順序的問題
要注意把接下來的 Script 程式碼code在這段之後才會不出現問題