带有 ajax 的 Js 在页面加载时导致错误

Js with ajax couse error on page load

我有一个 JS 脚本来弹出一个 calendar.If 我在页面上放了 AJAX 以避免刷新我得到了错误 :

无法修改控件集合,因为该控件包含代码块(即 <% ... %>)。

我读到如果我将 <%= 更改为 <%# 应该可以。我试了一下,页面加载了,但是这个功能不起作用。

js

   function ShowDatePopup() {

               $find("<%= RadDatePicker1.ClientID %>").showPopup();
           }

aspx

<telerik:RadDatePicker ID="RadDatePicker1"  Runat="server" Culture="el-GR" Visible="False" Skin="WebBlue" AutoPostBack="True"  >
<Calendar runat="server"  UseRowHeadersAsSelectors="False"  UseColumnHeadersAsSelectors="False" EnableWeekends="True" FastNavigationNextText="&amp;lt;&amp;lt;" Skin="WebBlue"></Calendar>
<DateInput runat="server"  DisplayDateFormat="yyyy/MM/dd" DateFormat="yyyy/MM/dd" LabelWidth="40%" EmptyMessage="Ex: 2015/01/24" AutoPostBack="True"  >
      <ClientEvents    OnFocus="ShowDatePopup"/>
<EmptyMessageStyle Resize="None"></EmptyMessageStyle>

<ReadOnlyStyle Resize="None"></ReadOnlyStyle>

<FocusedStyle Resize="None"></FocusedStyle>

<DisabledStyle Resize="None"></DisabledStyle>

<InvalidStyle Resize="None"></InvalidStyle>

<HoveredStyle Resize="None"></HoveredStyle>

<EnabledStyle Resize="None"></EnabledStyle>

   </DateInput>
<DatePopupButton  ImageUrl="" HoverImageUrl=""></DatePopupButton>  
   </telerik:RadDatePicker>

我做错了什么,我该如何解决?

  1. 将 Visible 属性 设置为 true 以实际获取浏览器页面上的控件(以及,通过扩展,它的客户端对象)

  2. 将您的服务器代码块包装在 RadCodeBlock 标签中:http://www.telerik.com/help/aspnet-ajax/ajax-radscriptblock-radcodeblock.html.

这是你的代码片段,对我来说效果很好:

        <telerik:RadDatePicker ID="RadDatePicker1" runat="server" Culture="el-GR" Visible="true" Skin="WebBlue" AutoPostBack="True">
            <Calendar ID="Calendar1" runat="server" UseRowHeadersAsSelectors="False" UseColumnHeadersAsSelectors="False" EnableWeekends="True" FastNavigationNextText="&amp;lt;&amp;lt;" Skin="WebBlue"></Calendar>
            <DateInput ID="DateInput1" runat="server" DisplayDateFormat="yyyy/MM/dd" DateFormat="yyyy/MM/dd" LabelWidth="40%" EmptyMessage="Ex: 2015/01/24" AutoPostBack="True">
                <ClientEvents OnFocus="ShowDatePopup" />
                <EmptyMessageStyle Resize="None"></EmptyMessageStyle>
                <ReadOnlyStyle Resize="None"></ReadOnlyStyle>
                <FocusedStyle Resize="None"></FocusedStyle>
                <DisabledStyle Resize="None"></DisabledStyle>
                <InvalidStyle Resize="None"></InvalidStyle>
                <HoveredStyle Resize="None"></HoveredStyle>
                <EnabledStyle Resize="None"></EnabledStyle>
            </DateInput>
            <DatePopupButton ImageUrl="" HoverImageUrl=""></DatePopupButton>
        </telerik:RadDatePicker>
        <telerik:RadCodeBlock runat="server" ID="RadCodeBlock1">
            <script>
                function ShowDatePopup() {
                    $find("<%= RadDatePicker1.ClientID %>").showPopup();
                }
            </script>
        </telerik:RadCodeBlock>