ASP Ajax Calendar Extender и отображение времени
Я использую элемент управления расширением календаря Ajax Control Toolkit. Хотя в некоторых полях я хочу отображать время вместе с датой. Я попытался просто установить формат на "дд / мм / гггг чч: мм: сс", но раздел времени стирается. Если пользователь хочет изменить временной интервал, он может сделать это вручную, раскрывающийся список календаря используется только для изменения части даты.
Есть ли обходные пути или альтернативы, чтобы это работало?
4 ответа
У меня похожая проблема, и я планирую использовать поле "Дата" и связанный с ним раскрывающийся список времени (с шагом 1/2 часа). Пользователь устанавливает дату в поле даты, при необходимости используя элемент управления календаря, и сбрасывает время до допустимого. Я планирую сделать один выбор в выпадающем списке времени "не волнует", если это событие "весь день".
[РЕДАКТИРОВАТЬ] Я нашел этот плагин jquery, который я могу в конечном итоге использовать. Я также нашел ссылку на Gaia DateTimePicker в ответах на этот пост (который сейчас, похоже, будет удален, возможно, потому, что OP запрашивал элементы управления WPF, а не веб-элементы управления).
Календарь Ra-Ajax выходит с поддержкой TIME в следующую пятницу (28 ноября 2008 г.), и его лицензия LGPL...
На основе CalendarExtender вы можете установить формат "MM/dd/yyyy". После того, как пользователь выберет дату в календаре, он вернется, например, 28.04.2009. В событии выбранной даты, вы можете добавить текущее время после даты возвращения.
OnClientDateSelectionChanged = "dateselect"
function dateselect(ev)
{
var calendarBehavior1 = $find("Calendar1");
var d = calendarBehavior1._selectedDate;
var now = new Date();
calendarBehavior1.get_element().value = d.format("MM/dd/yyyy") + " "+now.format("HH:mm:ss")
}
Единственный способ добавить компонент времени в AjaxControlToolKit CalendarExtender - это добавить его с помощью OnClientDateSelectionChanged и JavaScript.
<ajaxToolkit:CalendarExtender ID="ce1" runat="server" PopupButtonID="calImg" Enabled="true" Format="dd/MM/yyyy" TargetControlID="txtLeft" PopupPosition="TopRight" OnClientDateSelectionChanged="AppendTime"></ajaxToolkit:CalendarExtender>
а также
<script language="javascript" type="text/javascript">
//this script will get the date selected from the given calendarextender (ie: "sender") and append the
//current time to it.
function AppendTime(sender, args) {
var selectedDate = new Date();
selectedDate = sender.get_selectedDate();
var now = new Date();
sender.get_element().value = selectedDate.format("dd/MM/yyyy") + " " + now.format("hh:mm tt");
}
</script>