但是一些靜態內容,以及一些指令檔的路徑如果在自訂控制項中引用,而後這個自訂控制項又要在不同的母板頁,或者不同的目錄下引用.那就不可避免的會出現路徑問題了.
解決方案也很簡單:
複製代碼 代碼如下:script language="javascript" type="text/javascript" src='<%=ResolveUrl("~/js/media.js") %>'></script>
<%=ResolveUrl("~/js/media.js") %>'>正是ASP.NET擷取絕對路徑的輸出方法.
另:
如果路徑問題存在於javascript指令碼中
在後台已經將其內容寫好: 複製代碼 代碼如下:protected void Page_Load(object sender, EventArgs e)
{
string swf = ResolveUrl("~/images/flash_menu20090430.swf");
string menu =ResolveUrl("~/menu.xml");
string list = ResolveUrl("~/list.xml");
this.Literal1.Text = "var swf=\"" + swf + "\";var menu=\"" + menu + "\";var list=\"" + list + "\";";
}
用Literal控制項在script指令碼中: 複製代碼 代碼如下:<script type="text/javascript"><!--
<asp:Literal ID="Literal1" runat="server"></asp:Literal>
var so = new SWFObject(swf, "mymovie", "948", "307", "8", "#ffffff");
so.addVariable("menuurl", ReplaceMystr(menu));
so.addParam("wmode", "opaque");
so.addVariable("listurl", ReplaceMystr(list));
so.write("flashkv");
// --></script>