2012-06-13 86 views
0

我得到了一個簡單的ASP.NET UpdatePanel,它在我運行Visual Studio(Casini)時按預期工作。AJAX/UpdatePanel無法在IIS7上工作

但是,一旦部署到我的本地IIS,它不再工作。

什麼是錯誤配置?

我的代碼:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head runat="server"> 
    <title></title> 
</head> 
<body> 
    <form id="form1" runat="server"> 
    <div> 
     <asp:Button ID="Button1" runat="server" Text="Button" OnClick="Button1_Click" /> 
     <asp:ScriptManager ID="ScriptManager1" runat="server"> 
     </asp:ScriptManager> 
     <asp:UpdatePanel ID="UpdatePanel1" runat="server"> 
      <ContentTemplate> 
       <asp:Label ID="Label1" runat="server" Text="Label"></asp:Label> 
      </ContentTemplate> 
      <Triggers> 
       <asp:AsyncPostBackTrigger ControlID="Button1" /> 
      </Triggers> 
     </asp:UpdatePanel> 
    </div> 
    <input id="Text1" type="text" /> 
    </form> 
</body> 
</html> 

...和代碼隱藏:

using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Web; 
using System.Web.UI; 
using System.Web.UI.WebControls; 

namespace Presentation.Web 
{ 
    public partial class WebForm1 : System.Web.UI.Page 
    { 
     protected void Page_Load(object sender, EventArgs e) 
     { 

     } 

     protected void Button1_Click(object sender, EventArgs e) 
     { 
      Label1.Text = DateTime.Now.ToString(); 
     } 
    } 
} 

在卡西尼,標籤不回發更新。在IIS上,發生回發。

+0

不限錯誤?它是否回傳頁面? –

+0

ü收到錯誤'系統未定義' –

+0

該頁面在IIS上託管時會定期回發。在Casini中,它按預期執行AJAX請求。 –

回答

0

ASP.NET AJAX要求網頁與XHTML兼容(不是HTML 4.0)。事實上,如果web.config中沒有mode = Transitional,將會阻止scriptManager甚至在頁面中呈現,並且每個AJAX命中都會像普通的回發一樣。

放web.config中xhtmlConformance模式= 「過渡」/>

Chk link it should help u

+0

沒有幫助,仍然是同樣的問題。 –

+0

我已更新我的答案chk鏈接 –

1

添加在web.config文件中的處理程序部下面的行:

<add name="Ajax" verb="POST,GET" path="ajax/*.ashx" type="Ajax.PageHandlerFactory, Ajax"/>

+0

沒有幫助,仍然是同樣的問題。 –

相關問題