我有一个JS脚本来弹出一个日历。如果我把AJAX放在页面上以避免刷新我得到错误:
无法修改Controls集合,因为该控件包含代码块(即<%...%>)。
我已经读过如果我改变<%= to<%#应该工作。我尝试它并加载页面,但功能不起作用。
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="&lt;&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>
我做错了什么以及如何解决这个问题?
答案 0 :(得分:0)
将Visible属性设置为true以实际获取浏览器页面上的控件(以及扩展名为客户端对象)
将您的服务器代码块包装在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="&lt;&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>