使用客户端 API,我希望能够做到这一点:
picker.set_selectedDate(new Date());
在不触发 valueChanged 事件处理程序的情况下,API 中是否有其他方法可以执行此操作?同样,这都是客户端 JavaScript。
谢谢。
最佳答案
您可以从日期选择器中删除事件处理程序,然后设置日期,如下所示:
var datePicker = $find("<%= RadDatePicker1.ClientID %>");
datePicker.remove_dateSelected(DateSelected);
datePicker.set_selectedDate(new Date());
这将阻止事件被触发,如果您需要它,您可以在之后再次添加它。 DateSelected 是您在控件上设置的事件的名称,请参见下面的小示例
<body>
<form id="form1" runat="server">
<asp:ScriptManager ID="SM" runat="server"></asp:ScriptManager>
<telerik:RadCodeBlock ID="RadCodeBlock1" runat="server">
<script type="text/javascript">
function pageLoad() {
var datePicker = $find("<%= RadDatePicker1.ClientID %>");
datePicker.remove_dateSelected(DateSelected);
datePicker.set_selectedDate(new Date());
}
function DateSelected(sender, e) {
alert(sender);
}
</script>
</telerik:RadCodeBlock>
<div>
<telerik:RadDatePicker ID="RadDatePicker1" runat="server">
<ClientEvents OnDateSelected="DateSelected" />
</telerik:RadDatePicker>
</div>
</form>
关于c# - 在不触发 ValueChanged 的情况下设置 RadDatePicker 日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5122147/