添加ScriptManager使请求永远不会完成

时间:2016-11-25 06:21:41

标签: asp.net asp.net-ajax

我有一个非常奇怪的问题。最初,我的页面工作正常,如果我点击“后退”按钮,它将导航到上一页。但是当我添加这一行

<asp:ScriptManager ID="ScriptManager" runat="server"></asp:ScriptManager>

一切似乎都停止了。单击该按钮会导致请求永远不会完成(即,当我单击“返回”按钮时,我无法返回上一页。)

我的页面结构如下所示

<%@ Page Title="" Language="C#" MasterPageFile="~/Master/Main.Master" AutoEventWireup="true" CodeBehind="dsp_FileName.aspx.cs" Inherits="[Namespace].dsp_FileName" %>
<%@ MasterType VirtualPath="~/Master/Main.Master" %>
<asp:Content ID="C1" ContentPlaceHolderID="PageContent" runat="server">
    <script type="text/javascript">
        ...
    </script>

    <asp:ScriptManager ID="ScriptManager" runat="server"></asp:ScriptManager>
    <div>
        ...
    </div>
</asp:Content>

我错过了什么吗?

1 个答案:

答案 0 :(得分:0)

出现此问题是因为在我的母版页中,我有以下代码段:

<form id="frmMain" runat="server" onsubmit="progressStart('Please wait...');">

基本上我想在用户点击按钮时阻止任何其他输入。所以我需要将上面的代码段修改为:

<form id="frmMain" runat="server" onsubmit="progressStart('Please wait...'); return true;">

在我需要使用脚本管理器的页面中,我需要添加以下代码。

function pageLoad() {
    if (args.get_isPartialLoad()) {                
        jQuery.ajax({
            type: "GET",
            url: "../../JS/Javascript.js",  
            dataType: "script",
            cache: true
        });
        $('#dErr').dialog('destroy'); // this is the dialog that will show inside the progressStart function.
    }
}