2011-07-29 63 views
1

我有一個網頁來修改腳本,顯示某個城市的天氣信息。 在此頁面中,用戶可以通過加載其他腳本來更改城市。這個腳本是從天氣網站複製的,作爲一個小部件。ASP.NET腳本部分回發後

我有這樣的線來表示天氣:

<asp:Literal ID="ltWeatherScript" runat="server" Text='<%# Eval("WeatherScript") %>'> 
</asp:Literal> 

其中「WeatherScript」是顯示天氣腳本。

問題是當頁面有部分回發時,腳本不再工作,直到我重新加載頁面。

該腳本可能是,例如,這一個:

script type="text/javascript" src="http://tiempo.meteored.com/wid_loader/50a0f88ef4aae65daacf31e7a4b1b0fe" 

你知道如何解決這個問題?

回答

0

我檢查過JS。

此行是導致問題的唯一嫌疑犯。

conte = document.getElementById('cont_50a0f88ef4aae65daacf31e7a4b1b0fe'); 
enlace = document.getElementById('h_50a0f88ef4aae65daacf31e7a4b1b0fe'); 
anchor = document.getElementById('a_50a0f88ef4aae65daacf31e7a4b1b0fe'); 

而你說的The problem is when the page has a partial postback, the script doesn't work anymore。所以原因可能是在回發控制的ID發生變化之後。如果您可以發佈有助於診斷問題的標記。至於解決方案,你必須指定控件的ClientId。檢查鏈接Control.ClientID Property獲得更多關於此屬性的信息以及如何使用它。

0

您需要讓您正在加載的腳本(WeatherScript)在部分回發後再次執行。由於該腳本不是函數,因此您需要在頁面上創建一個函數,以對從您的網站加載的腳本執行(令人恐怖的顫抖)評估。然後,您需要在頁面加載和部分更新時調用該函數。

您使用什麼方法進行部分回傳?更新面板,jQuery/XUI AJAX調用等?這將幫助我向您展示在部分回發完成時需要添加的代碼以調用您的新函數。

+0

我正在使用更新面板,實際上是Telerik RadPanel。 –