2010-03-09 46 views
1

我正在使用Ajaxy調用來加載部分視圖。在調試模式下,它在Firefox和IE中工作正常。 但在調試模式下,我得到了follwoing錯誤:ASP.NET MVC上的Ajax.Beginform錯誤頁面

錯誤: 'SYS' 未定義

Ajaxy調用代碼:對應於這個

<% using (Ajax.BeginForm("SearchResults", new AjaxOptions { UpdateTargetId = "divLoadSearchResults" })) 
{%> 

HTML查看源文件:

<form action="/Home/SearchResults" method="post" onclick="***Sys.***Mvc.AsyncForm.handleClick(this, new Sys.UI.DomEvent(event));" onsubmit="Sys.Mvc.AsyncForm.handleSubmit(this, new Sys.UI.DomEvent(event), { insertionMode: Sys.Mvc.InsertionMode.replace, updateTargetId: 'divLoadSearchResults' });"> 

我正在使用MVC RC2框架。任何人都有與RC2類似的問題?

如果它不處於調試模式,它工作正常。再次,如果我使用調試模式或CTRL + F5運行它,它會顯示錯誤。

欣賞您的回覆。

回答

3

聽起來就像它在調試模式下不加載MicrosoftMvcAjax.js或MicrosoftAjax.js文件。檢查你包括這些文件的位置,並確保沒有任何條件可以排除它。如果在不調試時使用內容交付網絡加載它,請確保調試時備用加載的路徑正確。

例:

<% if (debug) { %> 
    <script type="text/javascript" 
      src="<%= Url.Content("~/scripts/MicrosoftAjax.debug.js") %>"> 
     </script> 
     <script type="text/javascript" 
       src="<%= Url.Content("~/scripts/MicrosoftMvcAjax.debug.js") %>"> 
     </script> 
<% } 
    else { %> 
     <script type="text/javascript" 
       src="http://ajax.microsoft.com/ajax/mvc/1.0/MicrosoftAjax.js"> 
     </script> 
     <script type="text/javascript" 
       src="http://ajax.microsoft.com/ajax/mvc/1.0/MicrosoftMvcAjax.js"> 
     </script> 
<% } %> 
+0

這是正確的。有效。 +1並被接受。 – Rita 2010-03-09 01:33:18