2011-10-17 63 views
0

功能我試圖整合我誤差facebox處理,以顯示在一個更清潔的方式我的錯誤。正在發生的問題是,當我嘗試調用jQuery.facebox時,它告訴我,它不是一個函數。但是我可以在我的應用程序中使用facebox的鏈接。facebox不是在asp.net母版

頭:

<script language="javascript" src="http://code.jquery.com/jquery-latest.js" type="text/javascript" /> 
<script language="javascript" src="/Resources/js/jquery.min.js" type="text/javascript"></script>  
<script language="javascript" src="/Resources/js/jquery-1.2.2.pack.js" type="text/javascript"></script>   
<link href="/Resources/css/facebox.css" media="screen" rel="stylesheet" type="text/css"/>   
<script src="/Resources/js/facebox.js" type="text/javascript" /> 

然後從我對這樣的母版林調用facebox代碼隱藏:

ScriptManager.RegisterStartupScript(Page, typeof(string), "ErrorMessage", "jQuery.facebox({ div: '#error' });", true); 

和錯誤的div是下來,對母版的末尾:

<div id="error" style="display:none;"> 
    <table width="100%" cellpadding="0" cellspacing="0"> 
     <tr> 
      <td colspan="2" style="background-color:#5F92CB; color:#fff; padding:6px; font-weight:bold;" align="left">Error Occurred while processing request</td> 
     </tr> 
     <tr> 
      <td style="padding:4px;" class="boldText"><asp:Label ID="lblErrorMessage" runat="server" /></td> 
     </tr>    
    </table> 
</div> 

任何幫助將不勝感激。感謝

+0

你爲什麼要包括的jQuery的多個版本?這可能會破壞事情。 –

+0

我對jquery相當陌生,試圖利用多個插件來實現我正在尋找的東西。而且我發現,當我不使用插件附帶的所有js文件時,插件不起作用。我嘗試使用微軟的AJAX CDN但當我做facebox不起作用。 – chadn

回答

1

如果你確實需要使用jquery的多個版本在同一頁面,這是可行的,但並不總是最好(可能會頭痛),你將不得不使用jQuery的noconflict模式。請查看以下網址的更多信息和實施細節:link 1,link 2

瞭解哪些插件使用哪個版本的jQuery是很重要的。這是因爲你將不得不按正確的順序加載它們。您需要在新的jQuery版本之前加載舊版插件。

這就是說它的尤爲明顯加載DOM時運行的腳本,就像布賴恩說,使用下面的代碼片段來實現這一目標:

$(document).ready(function() { jQuery.facebox({ div: '#error' }); }) 
1

嘗試在包裝的document.ready其作爲:

ScriptManager.RegisterStartupScript(Page, typeof(string), "ErrorMessage", "$(document).ready(function() { jQuery.facebox({ div: '#error' }); });", true); 

它的失敗的原因是因爲它的運行之前facebox插件是準備最有可能的。

+0

,我認爲你的預感是正確的可能性但如何將「$(文件)。就緒(函數()...」工作呢?(順便說一句這就是$(函數()...) –

+0

很長的手版這是插件沒有準備好基於你的錯誤,所以你需要延遲,直到JQuery完全準備好,準備事件...我錯了狀態$未初始化,因爲它是在腳本被定義時定義的,但它可能不能完全實現爲JS腳本開始處理/執行 –

+0

我只是嘗試這樣做,它仍然給了我一個jQuery.facebox不是一個函數 – chadn