Post #269,194
10/2/06 10:06:11 AM
|
Disabling 3rd party controls
In the main .ASPX page I have several controls that we purchased. Based upon the selected report type chosen by the user (clicking a radio button), I'd like several of their controls to be disabled because they're not relevant for that specific report type. So in Javascript I have: document.getElementById("IDName").disabled=true
This statement does not work. The company's support team says that I can try setting the Enable/Disable property at the server side; however, to get to that point the user must submit their request. I want to remove user access from irrelevant screen controls before they're ready to submit. Anybody got any ideas on how to work around this?
lincoln
"Chicago to my mind was the only place to be. ... I above all liked the city because it was filled with people all a-bustle, and the clatter of hooves and carriages, and with delivery wagons and drays and peddlers and the boom and clank of freight trains. And when those black clouds came sailing in from the west, pouring thunderstorms upon us so that you couldn't hear the cries or curses of humankind, I liked that best of all. Chicago could stand up to the worst God had to offer. I understood why it was built--a place for trade, of course, with railroads and ships and so on, but mostly to give all of us a magnitude of defiance that is not provided by one house on the plains. And the plains is where those storms come from." -- E.L. Doctorow
Never apply a Star Trek solution to a Babylon 5 problem.
I am not merely a "consumer" or a "taxpayer". I am a Citizen of the United States.
[link|mailto:bconnors@ev1.net|contact me]
|
Post #269,203
10/2/06 11:03:56 AM
|
2 hack solutions
I'm going to assume that you have already looked through all of the properties for this control and there is no other propery (ReadOnly, Active, or such) that will do what you want. Try using javascript to dump all of the properties for you, there may be an undocumented property that does that.
If the object has an onChange event then you can save the current value and reset it on every change when it is "disabled". You could also try using onFocus to prevent the control from every getting focus, but I recall trying that and finding that there was no way to 100% block controls from getting focus. You should be able to reset the color of the control to make it look like it is disabled.
The other solution is to put the control into a div and hide the div when the control is disabled. If you want you can create a disabled version of the control that is normally hidden and show it when you hide the active version to create the apperance of a normal disabled control.
Jay
|
Post #269,303
10/3/06 12:10:01 PM
|
No hidden properties
And sorry, but your second suggestion won't work either because I can't disable the control client side in Javascript. Their support says to work with it at the server side, but that's not what I want. I did try changing the background and foreground color to make it look disabled, and guess what? That's right -- I can code it in Javascript, but the control ignores the color changes.
As good as their products are, our VP wants our consultants to get together with us and look into other companies, to see if their support and documentation is better, and if their controls can do the simple things that I'm trying to do.
lincoln
"Chicago to my mind was the only place to be. ... I above all liked the city because it was filled with people all a-bustle, and the clatter of hooves and carriages, and with delivery wagons and drays and peddlers and the boom and clank of freight trains. And when those black clouds came sailing in from the west, pouring thunderstorms upon us so that you couldn't hear the cries or curses of humankind, I liked that best of all. Chicago could stand up to the worst God had to offer. I understood why it was built--a place for trade, of course, with railroads and ships and so on, but mostly to give all of us a magnitude of defiance that is not provided by one house on the plains. And the plains is where those storms come from." -- E.L. Doctorow
Never apply a Star Trek solution to a Babylon 5 problem.
I am not merely a "consumer" or a "taxpayer". I am a Citizen of the United States.
[link|mailto:bconnors@ev1.net|contact me]
|
Post #269,330
10/3/06 8:43:36 PM
|
Your VP has the right idea.
If the controls you 'bought' can't do what you need them to and the vendor isn't any use, then going somewhere else is the way the to go. You might like to tell your existing vendor that you're looking elsewhere and why.
Wade.
"Insert crowbar. Apply force."
|
Post #269,398
10/4/06 4:26:53 PM
|
We definitely purchased the controls
at two licenses at several hundred dollars apiece, which gives us 1 year of technical support via email, opening online trouble tickets, and 4 downloads of upgrades for the whole suite. The company is located in eastern Europe; they do not do support by phone.
The purchase was recommended by our consultants who, while they like the products functionality, have to actually code using them and thus run into the kinds of problems I'm facing.
lincoln
"Chicago to my mind was the only place to be. ... I above all liked the city because it was filled with people all a-bustle, and the clatter of hooves and carriages, and with delivery wagons and drays and peddlers and the boom and clank of freight trains. And when those black clouds came sailing in from the west, pouring thunderstorms upon us so that you couldn't hear the cries or curses of humankind, I liked that best of all. Chicago could stand up to the worst God had to offer. I understood why it was built--a place for trade, of course, with railroads and ships and so on, but mostly to give all of us a magnitude of defiance that is not provided by one house on the plains. And the plains is where those storms come from." -- E.L. Doctorow
Never apply a Star Trek solution to a Babylon 5 problem.
I am not merely a "consumer" or a "taxpayer". I am a Citizen of the United States.
[link|mailto:bconnors@ev1.net|contact me]
|
Post #269,340
10/4/06 2:23:05 AM
|
aspx control != html "control"
Depending on the control, what the server side code deems a control and what actually gets spit out to the client may be two different things.
What actual html and javascript does a single instance of one of these controls generate?
-- Chris Altmann
|
Post #269,396
10/4/06 4:22:50 PM
|
here's the html for the control
[table id="DepartureTable" runat="server"] [tr] [TD align="right" width="40"] [LABEL style="FONT-SIZE: 9pt"]From:[/LABEL] [/TD]
[td width="190"] [div id="DivDDF" runat="server"] [radcln:raddatepicker id="RaddatepickerDDF" AllowEmpty="True" Runat="server"] [DateInput AutoPostBack="True" HideOnBlur="True" Width="100px" RangeValidation="Immediate" DisplayPromptChar="_" PromptChar=" " EmptyMessage=" " style="float: left"][/DateInput] [/radcln:raddatepicker] [/div] [/td] [/tr]
[tr] [TD align="right" width="40"] [LABEL style="FONT-SIZE: 9pt"]To:[/LABEL] [/TD]
[td width="190"] [div id="DivDDT" runat="server"] [radcln:raddatepicker id="RadDatePickerDDT" AllowEmpty="True" Runat="server"] [DateInput AutoPostBack="True" HideOnBlur="True" Width="100px" RangeValidation="Immediate" DisplayPromptChar="_" PromptChar=" " EmptyMessage=" " style="float: left"][/DateInput] [/radcln:raddatepicker]\t\t\t\t\t\t\t\t[/div] [/td] [/tr] [/table]
===============================================
/* these statements do not work */ document.getElementById("RadDatePickerDDF").setAttribute("Enabled","False") document.getElementById("RadDatePickerDDT").setAttribute("Enabled","False") document.getElementById("RadDatePickerDDF").setAttribute("backgroundColor","a9a9a9") document.getElementById("RadDatePickerDDT").setAttribute("backgroundColor","a9a9a9") document.getElementById("RadDatePickerDDF").Enabled=false document.getElementById("RadDatePickerDDT").Enabled=false
/* neither do these */ /* I figured that if I could just make it invisible, then I could live with it */\t\t\t\tdocument.getElementById("DivDDF").setAttribute("Visible","False") document.getElementById("DivDDT").setAttribute("Visible","False") DivDDT.Disabled=true; DivDDF.Disabled=true; document.getElementById("DivDDT").disabled=true document.getElementById("DivDDF").disabled=true
lincoln
"Chicago to my mind was the only place to be. ... I above all liked the city because it was filled with people all a-bustle, and the clatter of hooves and carriages, and with delivery wagons and drays and peddlers and the boom and clank of freight trains. And when those black clouds came sailing in from the west, pouring thunderstorms upon us so that you couldn't hear the cries or curses of humankind, I liked that best of all. Chicago could stand up to the worst God had to offer. I understood why it was built--a place for trade, of course, with railroads and ships and so on, but mostly to give all of us a magnitude of defiance that is not provided by one house on the plains. And the plains is where those storms come from." -- E.L. Doctorow
Never apply a Star Trek solution to a Babylon 5 problem.
I am not merely a "consumer" or a "taxpayer". I am a Citizen of the United States.
[link|mailto:bconnors@ev1.net|contact me]
|
Post #269,400
10/4/06 4:52:47 PM
|
That's not the html...
...that's the embedded aspx control code. You are operating under the assumption that these are part of the client DOM - and it's unlikely that they are. More likely, the third party control emits name-mangled html to the browser. If you want to disable this stuff on the browser, then you have to know what the actual html id's are on the client.
To view the HTML, do a view source on the browser after it has been emitted in the script.
|
Post #269,534
10/5/06 3:09:47 PM
|
Forgive me
for not knowing that you wanted "after" HTML code, not the "before" code that I actually wrote.
lincoln
"Chicago to my mind was the only place to be. ... I above all liked the city because it was filled with people all a-bustle, and the clatter of hooves and carriages, and with delivery wagons and drays and peddlers and the boom and clank of freight trains. And when those black clouds came sailing in from the west, pouring thunderstorms upon us so that you couldn't hear the cries or curses of humankind, I liked that best of all. Chicago could stand up to the worst God had to offer. I understood why it was built--a place for trade, of course, with railroads and ships and so on, but mostly to give all of us a magnitude of defiance that is not provided by one house on the plains. And the plains is where those storms come from." -- E.L. Doctorow
Never apply a Star Trek solution to a Babylon 5 problem.
I am not merely a "consumer" or a "taxpayer". I am a Citizen of the United States.
[link|mailto:bconnors@ev1.net|contact me]
|
Post #269,568
10/5/06 8:25:49 PM
|
Problem was that the code you wrote to disable...
...was client side javascript, so you need the client side html to figure out whether or not it would achieve the desired result.
|
Post #269,535
10/5/06 3:37:42 PM
|
This is...
Legend: "<" = "[" ">" = "]"
Line breaks and unwrapping of lines have been done to ease viewing of the code. =========================================================================
[table id="DepartureTable"] [tr] [TD align="right" width="40"] [div id="DivDDFfrom"] [LABEL style="FONT-SIZE: 9pt"]From:[/LABEL] [/div] [/TD] [td width="190"] [div id="DivDDF"] [div id="RaddatepickerDDF_wrapper" style="display:inline;"] [input name="RaddatepickerDDF" id="RaddatepickerDDF" type="hidden" value="2005-01-01" /] [span id="RaddatepickerDDF_dateInput_wrapper"] [input type="hidden" name="RaddatepickerDDF:dateInput" value="2005-1-1 0:0:0" id="RaddatepickerDDF_dateInput" /] [input id="RaddatepickerDDF_dateInput_TextBox" name="RaddatepickerDDF:dateInput_TextBox" type="text" value="01/01/2005" style="width:100px;float: left" /] [script type="text/javascript"]window["RaddatepickerDDF_dateInput"] = new RadDateInput("RaddatepickerDDF_dateInput", "");window["RaddatepickerDDF_dateInput"].PromptChar=" ";window["RaddatepickerDDF_dateInput"].DisplayPromptChar="_"; window["RaddatepickerDDF_dateInput"].SetMask(rdmskr(1, 12, false, true),rdmskl('/'),rdmskr(1, 31, false, true),rdmskl('/'),rdmskr(1, 9999, false, true)); window["RaddatepickerDDF_dateInput"].SetValue(window["RaddatepickerDDF_dateInput"].field.value); window["RaddatepickerDDF_dateInput"].HideOnBlur=true;window["RaddatepickerDDF_dateInput"].AutoPostBack=true; window["RaddatepickerDDF_dateInput"].AutoPostBackCode="__doPostBack('RaddatepickerDDF$dateInput','')"; window["RaddatepickerDDF_dateInput"].EmptyMessage=" ";window["RaddatepickerDDF_dateInput"].AllowEmpty=true; window["RaddatepickerDDF_dateInput"].SetMinDate('01/01/2005 00:00'); window["RaddatepickerDDF_dateInput"].SetMaxDate('02/28/2007 00:00'); window["RaddatepickerDDF_dateInput"].InitializePartTypes([[], [4], [0], [2], [], [], [], [], [], []],[]);window["RaddatepickerDDF_dateInput"].Initialize(); [/script] [/span]
[a onclick="return window['RaddatepickerDDF'].TogglePopup();" onkeypress="return window['RaddatepickerDDF'].TogglePopup();" title="Open the calendar popup." href="#" id="RaddatepickerDDF_popupButton" style="vertical-align:bottom;"] [img id="RaddatepickerDDF_popupImage" onmouseover="this.src = '/TCN7/RadControls/Calendar/Skins/Outlook/Img/datePickerPopupHover.gif'" onmouseout="this.src = '/TCN7/RadControls/Calendar/Skins/Outlook/Img/datePickerPopup.gif'" onfocus="this.src = '/TCN7/RadControls/Calendar/Skins/Outlook/Img/datePickerPopupHover.gif'" onblur="this.src = '/TCN7/RadControls/Calendar/Skins/Outlook/Img/datePickerPopup.gif'" src="/TCN7/RadControls/Calendar/Skins/Outlook/Img/datePickerPopup.gif" alt="Open the calendar popup." style="border-width:0px;margin-top:3px;" /][/a] [div id="RaddatepickerDDF_calendar_wrapper" style="display: none" ] [span id="RaddatepickerDDF_calendarStyleSheetHolder" style="display:none"] [/span]
[script type="text/javascript"]RadCalendarNamespace.RadCalendarAppendStyleSheet('RaddatepickerDDF_calendar', '/TCN7/RadControls/Calendar/Skins/Default/Calendar.css'); [/script]
[table id="RaddatepickerDDF_calendar" cellpadding="0" cellspacing="0" summary="r.a.d.calendar instance" border="0" class="calendarWrapper"] [tr] [td colspan="3" style="vertical-align:top;white-space:nowrap;"] [table cellpadding="3" cellspacing="0" border="0" class="titlebar" summary="r.a.d.calendar title and navigation controls"] [tr] [td] [a id="RaddatepickerDDF_calendar_FNP" title="[[" href="javascript:void(0);"] [img src="/TCN7/RadControls/Calendar/Skins/Default/Img/fastNavLeft.gif" alt="[[" style="border:0px;" /] [/a] [/td] [td] [a id="RaddatepickerDDF_calendar_NP" title="[" href="javascript:void(0);"] [img src="/TCN7/RadControls/Calendar/Skins/Default/Img/arrowLeft.gif" alt="[" style="border:0px;" /] [/a] [/td] [td id="RaddatepickerDDF_calendar_Title" style="width:100%;text-align:center;white-space:nowrap;cursor:pointer;"]October 2006[/td] [td] [a id="RaddatepickerDDF_calendar_NN" title="]" href="javascript:void(0);"] [img src="/TCN7/RadControls/Calendar/Skins/Default/Img/arrowRight.gif" alt="]" style="border:0px;" /] [/a] [/td]
[td] [a id="RaddatepickerDDF_calendar_FNN" title="]]" href="javascript:void(0);"] [img src="/TCN7/RadControls/Calendar/Skins/Default/Img/fastNavRight.gif" alt="]]" style="border:0px;" /] [/a] [/td] [/tr] [/table] [/td] [/tr]
[tr] [td style="height:100%;" colspan="3"] [table id="RaddatepickerDDF_calendar_Top" class="TableLayout" cellspacing="0" cellpadding="0" summary="October 2006" border="0" style="border-collapse:collapse;"] [tr] [td class="DaysOfWeek"] [/td] [td id="RaddatepickerDDF_calendar_Top_cs_1" title="Sunday" class="DaysOfWeek" abbr="abbrText" scope="col"]Sun[/td] [td id="RaddatepickerDDF_calendar_Top_cs_2" title="Monday" class="DaysOfWeek" abbr="abbrText" scope="col"]Mon[/td] [td id="RaddatepickerDDF_calendar_Top_cs_3" title="Tuesday" class="DaysOfWeek" abbr="abbrText" scope="col"]Tue[/td] [td id="RaddatepickerDDF_calendar_Top_cs_4" title="Wednesday" class="DaysOfWeek" abbr="abbrText" scope="col"]Wed[/td] [td id="RaddatepickerDDF_calendar_Top_cs_5" title="Thursday" class="DaysOfWeek" abbr="abbrText" scope="col"]Thu[/td] [td id="RaddatepickerDDF_calendar_Top_cs_6" title="Friday" class="DaysOfWeek" abbr="abbrText" scope="col"]Fri[/td] [td id="RaddatepickerDDF_calendar_Top_cs_7" title="Saturday" class="DaysOfWeek" abbr="abbrText" scope="col"]Sat[/td] [/tr]
[tr] [td id="RaddatepickerDDF_calendar_Top_rs_1" class="DaysOfWeek"]39[/td] [td class="otherMonth" title="Sunday, September 24, 2006"]24[/td] [td class="otherMonth" title="Monday, September 25, 2006"]25[/td] [td class="otherMonth" title="Tuesday, September 26, 2006"]26[/td] [td class="otherMonth" title="Wednesday, September 27, 2006"]27[/td] [td class="otherMonth" title="Thursday, September 28, 2006"]28[/td] [td class="otherMonth" title="Friday, September 29, 2006"]29[/td] [td class="otherMonth" title="Saturday, September 30, 2006"]30[/td] [/tr]
[tr] [td id="RaddatepickerDDF_calendar_Top_rs_2" class="DaysOfWeek"]40[/td] [td id="RaddatepickerDDF_calendar_2006_10_1" class="radCalWeekendDefault" title="Sunday, October 01, 2006"] [a href="javascript:void(0);" ]1[/a] [/td] [td id="RaddatepickerDDF_calendar_2006_10_2" class="radCalDefault" title="Monday, October 02, 2006"][a href="javascript:void(0);" ]2[/a][/td] [td id="RaddatepickerDDF_calendar_2006_10_3" class="radCalDefault" title="Tuesday, October 03, 2006"][a href="javascript:void(0);" ]3[/a][/td] [td id="RaddatepickerDDF_calendar_2006_10_4" class="radCalDefault" title="Wednesday, October 04, 2006"][a href="javascript:void(0);" ]4[/a][/td] [td id="RaddatepickerDDF_calendar_2006_10_5" class="radCalDefault" title="Thursday, October 05, 2006"][a href="javascript:void(0);" ]5[/a][/td] [td id="RaddatepickerDDF_calendar_2006_10_6" class="radCalDefault" title="Friday, October 06, 2006"][a href="javascript:void(0);" ]6[/a][/td] [td id="RaddatepickerDDF_calendar_2006_10_7" class="radCalWeekendDefault" title="Saturday, October 07, 2006"][a href="javascript:void(0);" ]7[/a][/td] [/tr]
[tr] [td id="RaddatepickerDDF_calendar_Top_rs_3" class="DaysOfWeek"]41[/td] [td id="RaddatepickerDDF_calendar_2006_10_8" class="radCalWeekendDefault" title="Sunday, October 08, 2006"][a href="javascript:void(0);" ]8[/a][/td] [td id="RaddatepickerDDF_calendar_2006_10_9" class="radCalDefault" title="Monday, October 09, 2006"][a href="javascript:void(0);" ]9[/a][/td] [td id="RaddatepickerDDF_calendar_2006_10_10" class="radCalDefault" title="Tuesday, October 10, 2006"][a href="javascript:void(0);" ]10[/a][/td] [td id="RaddatepickerDDF_calendar_2006_10_11" class="radCalDefault" title="Wednesday, October 11, 2006"][a href="javascript:void(0);" ]11[/a][/td] [td id="RaddatepickerDDF_calendar_2006_10_12" class="radCalDefault" title="Thursday, October 12, 2006"][a href="javascript:void(0);" ]12[/a][/td] [td id="RaddatepickerDDF_calendar_2006_10_13" class="radCalDefault" title="Friday, October 13, 2006"][a href="javascript:void(0);" ]13[/a][/td] [td id="RaddatepickerDDF_calendar_2006_10_14" class="radCalWeekendDefault" title="Saturday, October 14, 2006"][a href="javascript:void(0);" ]14[/a][/td] [/tr]
[tr] [td id="RaddatepickerDDF_calendar_Top_rs_4" class="DaysOfWeek"]42[/td] [td id="RaddatepickerDDF_calendar_2006_10_15" class="radCalWeekendDefault" title="Sunday, October 15, 2006"][a href="javascript:void(0);" ]15[/a][/td] [td id="RaddatepickerDDF_calendar_2006_10_16" class="radCalDefault" title="Monday, October 16, 2006"][a href="javascript:void(0);" ]16[/a][/td] [td id="RaddatepickerDDF_calendar_2006_10_17" class="radCalDefault" title="Tuesday, October 17, 2006"][a href="javascript:void(0);" ]17[/a][/td] [td id="RaddatepickerDDF_calendar_2006_10_18" class="radCalDefault" title="Wednesday, October 18, 2006"][a href="javascript:void(0);" ]18[/a][/td] [td id="RaddatepickerDDF_calendar_2006_10_19" class="radCalDefault" title="Thursday, October 19, 2006"][a href="javascript:void(0);" ]19[/a][/td] [td id="RaddatepickerDDF_calendar_2006_10_20" class="radCalDefault" title="Friday, October 20, 2006"][a href="javascript:void(0);" ]20[/a][/td] [td id="RaddatepickerDDF_calendar_2006_10_21" class="radCalWeekendDefault" title="Saturday, October 21, 2006"][a href="javascript:void(0);" ]21[/a][/td] [/tr]
[tr] [td id="RaddatepickerDDF_calendar_Top_rs_5" class="DaysOfWeek"]43[/td] [td id="RaddatepickerDDF_calendar_2006_10_22" class="radCalWeekendDefault" title="Sunday, October 22, 2006"][a href="javascript:void(0);" ]22[/a][/td] [td id="RaddatepickerDDF_calendar_2006_10_23" class="radCalDefault" title="Monday, October 23, 2006"][a href="javascript:void(0);" ]23[/a][/td] [td id="RaddatepickerDDF_calendar_2006_10_24" class="radCalDefault" title="Tuesday, October 24, 2006"][a href="javascript:void(0);" ]24[/a][/td] [td id="RaddatepickerDDF_calendar_2006_10_25" class="radCalDefault" title="Wednesday, October 25, 2006"][a href="javascript:void(0);" ]25[/a][/td] [td id="RaddatepickerDDF_calendar_2006_10_26" class="radCalDefault" title="Thursday, October 26, 2006"][a href="javascript:void(0);" ]26[/a][/td] [td id="RaddatepickerDDF_calendar_2006_10_27" class="radCalDefault" title="Friday, October 27, 2006"][a href="javascript:void(0);" ]27[/a][/td] [td id="RaddatepickerDDF_calendar_2006_10_28" class="radCalWeekendDefault" title="Saturday, October 28, 2006"][a href="javascript:void(0);" ]28[/a][/td] [/tr]
[tr] [td id="RaddatepickerDDF_calendar_Top_rs_6" class="DaysOfWeek"]44[/td] [td id="RaddatepickerDDF_calendar_2006_10_29" class="radCalWeekendDefault" title="Sunday, October 29, 2006"][a href="javascript:void(0);" ]29[/a][/td] [td id="RaddatepickerDDF_calendar_2006_10_30" class="radCalDefault" title="Monday, October 30, 2006"][a href="javascript:void(0);" ]30[/a][/td] [td id="RaddatepickerDDF_calendar_2006_10_31" class="radCalDefault" title="Tuesday, October 31, 2006"][a href="javascript:void(0);" ]31[/a][/td] [td class="otherMonth" title="Wednesday, November 01, 2006"]1[/td] [td class="otherMonth" title="Thursday, November 02, 2006"]2[/td] [td class="otherMonth" title="Friday, November 03, 2006"]3[/td] [td class="otherMonth" title="Saturday, November 04, 2006"]4[/td] [/tr] [/table]
============================================================================
The id="RaddatepickerDDF" is what I named it.
lincoln
"Chicago to my mind was the only place to be. ... I above all liked the city because it was filled with people all a-bustle, and the clatter of hooves and carriages, and with delivery wagons and drays and peddlers and the boom and clank of freight trains. And when those black clouds came sailing in from the west, pouring thunderstorms upon us so that you couldn't hear the cries or curses of humankind, I liked that best of all. Chicago could stand up to the worst God had to offer. I understood why it was built--a place for trade, of course, with railroads and ships and so on, but mostly to give all of us a magnitude of defiance that is not provided by one house on the plains. And the plains is where those storms come from." -- E.L. Doctorow
Never apply a Star Trek solution to a Babylon 5 problem.
I am not merely a "consumer" or a "taxpayer". I am a Citizen of the United States.
[link|mailto:bconnors@ev1.net|contact me]
|
Post #269,538
10/5/06 4:54:22 PM
|
Should be able to do it by hand
Based on that, I would guess that the example code altmann mentions below fails because they have the wrong name/ID on the popup button. When you run their code is it generating some Javascript error?
Try directly disabling RaddatepickerDDF_dateInput_TextBox and RaddatepickerDDF_popupButton and see if it returns an error.
Jay
|
Post #269,570
10/5/06 8:40:15 PM
|
The original javascript...
...was trying to disable: <input name="RaddatepickerDDF" id="RaddatepickerDDF" type="hidden" value="2005-01-01" />\n\n document.getElementById("RaddatepickerDDF").Enabled=false Which tries to disable a hidden field - not a particularly effective opertation on hidden fields. If you can find the actual input fields that you want to disable, you could theoretically disable those inputs. But the name given to the aspx server control is used to hold the value in a hidden field, which is why your original code doesn't accomplish what you want to accomplish. Of course, it would be nicer if you could disable the server control - as opposed to handling over on the client. But since that's what your original problem was, you get back to square one.
|
Post #269,413
10/4/06 6:55:35 PM
|
Would a hearty RTFM be impolite?
Assuming this is the control you are using. If not I apologize.
[link|http://www.telerik.com/help/radcalendar/v1_NET2/cldClientSideAPI.html|http://www.telerik.c...lientSideAPI.html]
Enable/Disable RadDatePicker Client-Side To enable/disable DatePicker client-side, its DateInput.Enable() and DateInput.Disable() fucntions should be called. Here is a complete example:
[script type="text/javascript"]
function disable() { var datepicker = [%= RadDatePicker1.ClientID %]; datepicker.DateInput.Disable(); datepicker.PopupButton.onclick = null; }
function enable() { var datepicker = [%= RadDatePicker1.ClientID %]; datepicker.DateInput.Enable(); datepicker.PopupButton.onclick = function() { datepicker.TogglePopup(); return false; }; } [/script]
[radCln:RadDatePicker ID="RadDatePicker1" runat="server" ][/radCln:RadDatePicker]
[a href="javascript:disable();"]Disable[/a] [a href="javascript:enable();"]Enable[/a]
This may also be of use:
[link|http://msdn2.microsoft.com/en-us/library/3hc29e2a.aspx|http://msdn2.microso...ary/3hc29e2a.aspx]
-- Chris Altmann
|
Post #269,533
10/5/06 3:08:33 PM
|
Yes
because I already have. I have tried the code that you have Copied and Pasted from their web site.
It doesn't work.
I have opened up a trouble ticket with them, and so far they admit that setting the control's Disable property doesn't prevent the user from clicking on the Popup button, having the calendar displayed, allowing the user to traverse through the calendar, and selecting a date which gets displayed in the DatePicker's "display". THAT is the action that SHOULD be disabled, but ISN'T.
All I can do is make the control invisible, which leaves a large empty space on the page, which makes my company's president not happy.
lincoln
"Chicago to my mind was the only place to be. ... I above all liked the city because it was filled with people all a-bustle, and the clatter of hooves and carriages, and with delivery wagons and drays and peddlers and the boom and clank of freight trains. And when those black clouds came sailing in from the west, pouring thunderstorms upon us so that you couldn't hear the cries or curses of humankind, I liked that best of all. Chicago could stand up to the worst God had to offer. I understood why it was built--a place for trade, of course, with railroads and ships and so on, but mostly to give all of us a magnitude of defiance that is not provided by one house on the plains. And the plains is where those storms come from." -- E.L. Doctorow
Never apply a Star Trek solution to a Babylon 5 problem.
I am not merely a "consumer" or a "taxpayer". I am a Citizen of the United States.
[link|mailto:bconnors@ev1.net|contact me]
|
Post #269,546
10/5/06 6:15:34 PM
|
Works For Me
I grabbed the trial off their site and tried it using .Net 1.1 (VS 2003). It doesn't visually change the PopupButton but it removes the onclick handler of the hyperlink so it won't do anything when clicked. I bet you could add code in these functions to swap in a disabled button image or something.
Note that this code is manipulating two (actually more) different client side html controls/objects generated by the server side calendar controls.
DateInput is a hidden html input control that they appear to use behind the scenes and pass any changes (like calling Disable) via JS onto the separate visible input control.
PopupButton is a hyperlink that pops up the calendar when clicked. This code removes and reattaches the onlclick event handler to enable/disable that.
Yes, it would be nice if it did all this for you with one call to the object represented by the main ClientID (also a hidden html input control BTW), but it doesn't.
-- Chris Altmann
|