I am using a WebDateChooser control in an update panel which is reside in an UltraWebTab.When the page is loaded for the first time , I selected a date and submit the information and it get saved without any issues.
Then I wanted to change the date again and I clicked on the WebDateChooser control and then the Calender is not get displayed.
What could be the reason for this ?
Additional Info : This functionality is from a custom web part I developed in sharepoint.
Hi,
If that happens only under IE, then the reason can be failed readyState. In order to open drop-down calendar WebDateChooser checks its location and if it is located not directly in <form> or <body>, then it removes html element of calendar from its current parent and appends it to body. Unfortunately if that happens before page is loaded, then IE raises exception. So, to avoid that, WebDateChooser checks if page is loaded. For that purpose the onload event is used and document.readyState=='complete'. If both of those flags failed, then calendar is not dropped. On other hand I already saw few applications with complex architecture, when after async postback the readyState of IE is permantly falls into 'interactive' state and WebDateChooser never opens calendar. Unfortunately internal logic of WebDateChooser is not able to get around that feature of IE.
Application may disable load-check (and hope that user will not click drop-down while page is loading). To disable that validation application may do following:
<igsch:WebDateChooser ID="WebDateChooser1" runat="server"> <ClientSideEvents InitializeDateChooser="WebDateChooser1_InitializeDateChooser"></ClientSideEvents></igsch:WebDateChooser>
Hi Viktor
This is happening in both IE and FF.
So I guess what you suggested here is not applicable in this scenario.
Any thing else I should try.
Thank you.
itrathnasekara,
Did you find anything related to this issue? I am facing same thing. I have several dropdown and buttons along with webdate chooser in an Update Panel.
First time webdatechooser shows calendar dropdown but if i click on dropdown or button and if page is postback then WebDateChooser is not showing dropdown.
Viktor could you please guide me regarding the issue?
Thanks
Agni
Hello,
I have the same problem (using version 6.3.20063.1061).
Are there hotfixes ???
I eventually had a chance to test a WebPart on a VirtualMachine which had WindowServer2003 with SharePoint and VisualStudio2008.
I created a WSPBuilder project with a WebPartFeature/Site and I implemented its CreateChildControls by following:
base.CreateChildControls(); ScriptManager man = new ScriptManager(); this.Controls.Add(man); UpdatePanel pan = new UpdatePanel(); pan.ID = "up1"; WebDateChooser dc = new WebDateChooser(); //dc.JavaScriptFileName = "/js/ig_WebDropDown.js"; //dc.JavaScriptFileNameCommon = "/js/ig_shared.js"; //dc.CalendarJavaScriptFileName = "/js/ig_calendar.js"; dc.ID = "dc1"; Button b = new Button(); b.Text = "Button"; b.ID = "b1"; this.Controls.Add(pan); pan.ContentTemplateContainer.Controls.Add(dc); pan.ContentTemplateContainer.Controls.Add(b);
First thing that I found, that if a ScriptManager is present, then embedded javascript resources of WebDateChooser are not loaded. To debug, I built a debug versions of Shared and WebDateChooser dlls on that machine and tried both available options for embedded scriptsSystem.Web.UI.ScriptManager.RegisterClientScriptResource(..)System.Web.UI.ScriptManager.Scripts.Add(..)I added "test" alerts to embedded js files and similar validations for "typeof igdrp_getElementById" within initialization script.None of them worked and I could not figure out the reason why ScriptManager ignored embedded resources. So, to get around, I copied required js files to C:\Inetpub\wwwroot\wss\VirtualDirectories\80\js and set corresponding properties for WebDateChooser (see commented lines in codes above).That worked and WebDateChooser became operational. While testing that WebPart I noticed that button clicks trigger full postbacks instead of asynchronous and that was not related to WebDateChooser. A single button in updatepanel did exactly the same: full postback.
Probably my test application was wrong. It would be nice if you attach some codes (within CreateChildControls), which can be used to test that issue. If codes longer than few lines, then please use Options tab.
From my past experience with SharePoint, the reason for misbehavior can be missed ID properties of controls. Please ensure that every child control and all its naming container has a hard coded value for its ID property. That includes WebDateChooser, its ContentPane, its UltraWebTab and its container (which is probably UpdatePanel).To set ID of content pane you may use something like
Tab.ContentPane.ID = "cp1";
Also please try the lates hot-fixes, maybe that issue was already fixed. (Note: there are no hot-fixes for versions prior to 7.2).
Thank you very much for trying to reproduce the issue and trying to figure out what is causing that issue.
I am using web application projects for my web parts and under the "CreateChildControls" method I load the user control.By doing this it will save lots of design time when creating your web part.
Here is the code in the CreateChildControls method.
_control = this.Page.LoadControl(UserControlPath + UserControlFileName); Controls.Add(_control);
I am using the 6.3 version and will try to do a test using 7.2 as you mentioned.