Ajax 控制工具包无法正常工作

Posted

技术标签:

【中文标题】Ajax 控制工具包无法正常工作【英文标题】:Ajax Cotrol Toolkit is not working properly 【发布时间】:2013-08-02 12:49:47 【问题描述】:

我尝试使用日历扩展器,但由于某些原因它无法正常工作? 只需放一个简单的TextBox和CalendarExtender,当我在文本框内单击它应该会弹出日历,但我什么也没得到。

另一方面,我尝试了 ConfirmButtonExteder,它工作正常。

我不知道是否有问题,也许我在 web.config 中遗漏了一些东西?但是为什么 ConfirmButtonExtender 有效?

我使用 VS 2012、ASP.NET C#、.NET Framework 4.5、Ajax 工具包 4.1.7.725(来自官方网站的最新版本)然后从 Nuget 安装 Ajaxtoolkit(版本 4.5...),但还是一样,日历不是弹出窗口,confirmbuttonextender 工作得很好。不知道为什么?

这是我的代码:

<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="ajaxToolkit" %>
<asp:Content ID="Content1" runat="server" ContentPlaceHolderID="MainContent">
    <p>
        <ajaxToolkit:ToolkitScriptManager runat="server" ID="ScriptManager1" /    
        <asp:Button ID="Button1" runat="server" Text="Button" />
        <ajaxToolkit:ConfirmButtonExtender ID="ConfirmButtonExtender1" runat="server" TargetControlID="Button1"></ajaxToolkit:ConfirmButtonExtender>
        <br />
        <asp:TextBox runat="server" ID="Date1"/>
        <br />
        <ajaxToolkit:CalendarExtender ID="defaultCalendarExtender" runat="server" TargetControlID="Date1" />
    </p>
</asp:Content>

【问题讨论】:

尝试从 Nuget 安装工具包,如果您还没有这样做的话。我团队中的某个人遇到了类似的问题,我们尝试使用 Nuget 来获取工具包,之后一切都开始工作了。 Nuget 是 Visual Studio 中的一个选项,右键单击您的解决方案,应该有管理 Nuget 包的选项。 你把 ScriptManager 放在哪里了?确保它在 标签内 另外,您可以删除 CalendarExtender 中的 Enabled=true。这是我的示例:dotnetfrommanila.blogspot.com/2013/04/… @HaroldJavier 如您所见,我将 ToolkitScriptManager 放在了 asp 内容“MainContent”中,这是我的页面主体。已删除 Enabled=true 但它仍然无法正常工作,就手而言,ConfirmButtonExtender 工作正常??? @Paritosh 我从 Nuget 安装了 AjaxToolkit 4.5 但还是一样?? 【参考方案1】:

您可以这样做:

    检查 AjaxControlToolkit.dll 和 AjaxControlToolkit.pdb 是否在您的 Bin 文件夹中。

    放置组件 。

    确保 ScriptManager 位于 ContentPlaceHolder 的 BodyContent 下方

     <asp:Content ID="BodyContent" runat="server" ContentPlaceHolderID="MainContent">
     <asp:ScriptManager ID="ScriptManager1" runat="server">
     </asp:ScriptManager>
    

    仔细检查 TagPrefix 和 CalendarExtender 的 TargetControlID

     <cc1:CalendarExtender ID="CalendarExtender1" runat="server" TargetControlID="TextBox1">
    

【讨论】:

好的,首先,我在 BIN 文件夹中没有看到 AjaxControlToolkit.pdb 文件,该文件是什么以及如何获取它? OK 我重新安装 AjaxToolKit 并构建我的项目,AjaxControlToolkit.pdb 出现了,但它没有解决我的问题。其他的东西,比如 tagPrefix,ID,......我都正确添加了它们。 你终于找到解决方案了吗?我面临同样的错误。

以上是关于Ajax 控制工具包无法正常工作的主要内容,如果未能解决你的问题,请参考以下文章

jQuery AJAX 获取请求无法正常工作,返回值无法在控制台显示

AJAX 调用的 Laravel 路由无法正常工作

动态生成的 select2 ajax 触发器无法正常工作,没有控制台日志错误

将引导工具提示设置为 AJAX 调用结果

jquery .ajax函数与Laravel-4无法正常工作

在 Laravel 中调用 ajax 后数据表无法正常工作