[英]How to find behavior ID in Ajax calendar extender
我正在使用Ajax日歷擴展器來選擇多個日期。
<Ajax:CalendarExtender ID="CalendarExtender2" runat="Server"
BehaviorID="CalendarExtender2" TargetControlID="TextBox8"
PopupButtonID="Image1" OnClientDateSelectionChanged="dateselect" OnClientHidden="calendarhidden" OnClientShown="setInitialValue"/>
這是Java腳本代碼。
function dateselect(cntrl) {
var calendarBehavior1 = $find("CalendarExtender2");
var date = calendarBehavior1._selectedDate.format("M/dd/yyyy");
var hiddencontrol = $get('<%=HiddenField1.ClientID %>');
if (hiddencontrol.value.indexOf(date) == -1)
hiddencontrol.value += date + ";";
tag1 = 1;
}
function calendarhidden(cntrl) {
var calendarBehavior = $find("CalendarExtender2");
if (tag1 == 1)
calendarBehavior.show();
$get('<%=TextBox8.ClientID %>').value = $get('<%=HiddenField1.ClientID %>').value;
}
但是,我想使這些Java腳本函數通用化。 這樣我就可以用於其他壓延劑。 如果我通過這個
OnClientDateSelectionChanged="dateselect(this)"
如何使用此查找行為ID? 請幫忙。
您仍然必須在函數中使用$ find(CalBeh)._ selectedDate而不只是CalBeh._selectedDate。 因為CalBeh是字符串而不是日歷對象,所以會出現錯誤。
編輯:在您的javascript事件函數(dateselect和calendarhidden)中,您具有'cntrl'參數。 這是實際的日歷對象。
不用執行$ find和使用行為ID,您可以這樣做來獲取選定的日期:
var date = cntrl._selectedDate
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.