JavaScript ASP.NET UpdatePanel 中带有 Telerik RadDatePicker 的 Microsoft Edge 错误

JavaScript Error in Microsoft Edge with Telerik RadDatePicker in ASP.NET UpdatePanel

ASP.NET Microsoft Edge 浏览器中的 UpdatePanel 中的 Telerik RadDatePicker 在执行 post-back 时抛出 JavaScript 错误。 错误:"Unable to get property 'length' of undefined or null reference".

RadDatePicker 必须在 UpdatePanel 中才能抛出错误,这只发生在 Microsoft Edge 浏览器中,所有其他浏览器都没有错误。

Microsoft Edge 版本:44.17763.1.0
Telerik 控件:Telerik.Web.UI,版本=2019.1.409.45

有任何解决方法或变通办法吗?

这是我的代码:

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="EdgeDatePickerIssue.Default" %>

<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title>Default</title>
</head>
<body>
    <form id="form1" runat="server">
        <asp:ScriptManager ID="ScriptManager" runat="server" ScriptMode="Release" />

        <asp:UpdatePanel runat="server" ID="upPanel">
            <ContentTemplate>
                <label>Select Date:</label>
                <telerik:RadDatePicker ID="dpStartDate" runat="server"
                    AutoPostBack="true"
                    OnSelectedDateChanged="dpStartDate_SelectedDateChanged" />

                <telerik:RadButton ID="btnSave" runat="server"
                    Text="Save" OnClick="btnSave_Click" />
            </ContentTemplate>
        </asp:UpdatePanel>
    </form>
</body>
</html>

这是错误的屏幕截图: Screen-shot Error in Edge

您可以尝试使用Telerik RadScriptManager and Telerik RadAjaxPanel instead of using asp.net ScriptManager and UpdatePanel. Then, refer to this article来使用DatePicker控件。

此问题已在 R2 2019 中修复。 另一种解决方法是将 RadDatePicker 的 RenderMode 属性 设置为 Lightweight.