2010-02-22 70 views
0

我遇到了一個非常奇怪的錯誤。爲什麼asp.net UpdatePanel會破壞我的網址(.aspx0)?

我有一個工作得很好的頁面,沒有UpdatePanel。當我用UpdatePanel包圍東西時,出現此錯誤:

Server Error in '/' Application. 

The resource cannot be found. 

Description: HTTP 404. The resource you are looking for (or one of its dependencies) could have been removed, had its name changed, or is temporarily unavailable. Please review the following URL and make sure that it is spelled correctly. 

Requested URL: /SearchTicket.aspx0 

Version Information: Microsoft .NET Framework Version:2.0.50727.3603; ASP.NET Version:2.0.50727.3082 

頁面名稱爲SearchTicket。 aspx。當啓用UpdatePanel時,它會嘗試打開一個SearchTicket。 aspx0,顯然不能做到這一點,然後返回一個404

這是一個已知的bug?我在網上找不到關於它的線索。

備註:頁面首次按預期加載。第一次更新使這發生。

+0

? – Eric

+0

是的!在這種情況下,updatepanel在searchticket中聲明,而不是在.master中聲明。我沒有在其他地方的應用程序 –

回答

0

給這個鏡頭。我不知道爲什麼這樣做,但這可能會解決它。

試試這個:

function pageLoad(sender, args) { 
if(args.get_isPartialLoad()) { 
    var form = $get('Formname'); 
    form._initialAction = form.action = '../SearchTicket.aspx'; 
} 
} 

我您使用的母版頁閱讀,這也可能工作

 Sys.Application.add_load(function() 
{ 
    var form = Sys.WebForms.PageRequestManager.getInstance()._form; 
    form._initialAction = form.action = window.location.href; 
}); 

Check out this site.

And perhaps this one may help you

+0

更新面板感謝eric!在ajax調用成功之後,beginrequest中的rewritepath使得頁面重新啓動,因此所有內容都被重置(但是,在頁面重新啓動之前,ajax調用成功,事情看起來像預測的那樣)。這兩個js在我的頁面中沒有工作。第二個不能編譯,第一個說這個$ get不存在。 =/ –

+0

代替$ get使用document.getelementbyid(id)(使用正確的大寫字母) – Eric

+0

代碼沒有返回錯誤,但.aspx0被再次加載。此時,我放棄了使用此頁面的UpdatePanel。截止日期很糟糕,UpdatePanel不是必需的。 –

相關問題