I have NetAdvantage 2005 Vol.3 and I have an application we inherited from someone else. In there, we have a user control where we have a couple of WebDateChoser controls. The problem is that the controls don't render correctly. When you click on the control, nothing happens. You can manually type in the date, but you can't get the pop up to come up. Looking at the code generated, none of the javascript references are included among other things.
One thing I discovered is that if I include a WebDateChooser control in the parent page of the control, the controls in the user control will then work correctly.
So, how do I get this to work right?
As an update, the control is on a panel that is not visible at load time. If I set it visible the control renders correctly. If it is hidden and is later set to visible, the control doesn't render correctly.
Are your WebDateChooser controls placed in an AJAX-enabling control, such as UpdatePanel or WebAsyncRefreshPanel?
When you set a control's Visible property to false, it doesn't get rendered. to the client This is more than making the control "not visible" - as far as the browser is concerned, the control doesn't exist.
If your WebDateChooser controls are in an AJAX-enabling control, then only the contents of that control are likely being refreshed. This means that, even though the WebDateChooser controls are now visible, the links to their JavaScript aren't sent, because those SCRIPT elements are rendered to the HEAD element of the page.
You might consider using the CSS "display:none" or "display:hidden" style to hide the control, rather than setting the Visible property to false. This will mean that your panel will be rendered to the client, and will be initially hidden from view. Then, rather than setting Visible to true, clear the "display" style using JavaScript to make the panel (and the WebDateChooser controls) appear to the user. All functionality should be intact at this point; the only downside is that it will take a little longer to render your page when the controls are hidden.
There is no AJAX in this application. It is an ASP 1.1 application. The tabs used to switch "on" the panel are using postbacks. I would think that after a postback that it would then generate the control as well as all the scripts associated with it, but it doesn't.
What version of the NetAdvantage toolset are you using?
I said in the parent: 2005 vol.3 (or 5.3)
We're having the same issue for some time now. I have tracked it down to the same issue as jbirzer is having; "display:none;" on a parent. Only we have it wrapped in the UltraWebTab.
Just wondering if someone has a solution to this problem...
We're having version v10.1
I have found one issue when WebDateChooser is placed in a div having style = "display:none", then it continuously give error as this.parent is null in Mozilla. But when I removed this style then it is working fine. Please find below code which demonstrate the fact/.
<%
%>
="Infragistics35.WebUI.WebDateChooser.v9.2, Version=9.2.20092.1003, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb"
<!
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<
="http://www.w3.org/1999/xhtml">
="server">
>
</
="Conditional">
="0">
">
I've been unable to replicate the error in a new project, gradually adding code from the original application. As I said, it is pretty complex and it is hard to really say what parts are causing the problem.
In the meantime I've found a workaround for the time being. Since the control works fine when I put a WebDateChooser on the main page, I left it on there and hid it using the style tag you suggested. Since I did that, it behaved normally. I'll probably continue to look around to try to find what is causing the problem. If I do, I'll reply to this thread for historical reasons.
jbirzer said:Also, I did notice a javascript error which I didn't notice before: "Can't init0 script for WebDateChooser".
I believe that we'll need more information to be able to investigate this in more detail. I recommend that you create a sample project that we can run and debug - not necessarily the exact code that you're using, since that is likely to include a lot of code irrelevant to the issue which would slow down our research. You need to include only enough code to demonstrate the issue occurring.
Once you have a sample project, I recommend that you next submit a support request, attaching your sample to the request. A Developer Support Engineer will work with you to diagnose and resolve the issue you've described, using the sample you've provided in their research.
Unfortunately, there are a couple reasons why I can't send code to you. First, the code resides on a network which isn't connected to the internet for security reasons and I can't easily pull it off. Second, the code is pretty complex.
I did look through the execution and the panel definitely isn't visible when the user control's Load event is executed, so I think you have a point. Also, I did notice a javascript error which I didn't notice before: "Can't init0 script for WebDateChooser".