For complex wizard setups, some later steps can be dependent on choices a user makes on some initial tabs. For the RadWizard, it would be nice to be able to dynamically show and hide the tabs and steps from the User based on their choices (from client-side or server-side code). This would make the control a ton more useful and capable. Thanks.
Currently the only way to do anything with the default RadWizard navigation buttons (Cancel, Previous, Next, Finish) is to change the localization of them. Doing this workaround, however, will lose you the option to have any reasonable form of localization in your program. So this is a request to add templates to allow developers to create their own sets of buttons, and expose control of the area to developers completely so they may instead redesign the whole area if they wish.
Would be great to have a SingleClick and SingleClickText property for Cancel, Next and Finish buttons on the RadWizard in the same manner as normal RadButtons. Testing a project which is complete except for an issue where the user is able to submit many times by pressing the Finish button in quick succession. Tried this but did not work for me: http://www.telerik.com/forums/prevent-user-from-double-clicking-next-button
A workaround is to disable the embedded jQuery and use an older version (for example, 1.11.1 which is the previous version the suite used): https://docs.telerik.com/devtools/aspnet-ajax/controls/scriptmanager/disabling-the-embedded-jquery Repro steps: 1. put a wizard on the page that will do a postback upon step change 2. change a step Expected: the postback occurs, the step is changed Actual: Firefox throws TypeError: access to strict mode caller function is censored Sample markup <telerik:RadWizard RenderMode="Lightweight" runat="server" ID="RadWizard1" Width="600px" Height="330px" RenderedSteps="Active"> <WizardSteps> <telerik:RadWizardStep Title="first" Active="true"> in FF clicking on the next step will give you <code>TypeError: access to strict mode caller function is censored</code> </telerik:RadWizardStep> <telerik:RadWizardStep Title="click for error in FF">This is caused by the need to do a postback and one thing that causes it is <code>RenderedSteps="Active"</code></telerik:RadWizardStep> </WizardSteps> </telerik:RadWizard>
add findById client-side method to RadWizard and/or RadWizardStepCollection objects in order to find steps by id. This would also be useful server-side instead of using FindControl
New property that controls this behavior is added - ClickActiveStep with default value false.
Steps to reproduce: 1. Created a UserControl(.ascx) for implementing wizard control 2. Created wizard control with 2 steps 3. For each step placed a TextBox with Required Field Validator 4. Also place one extra button to verify the issue, generate its event as well 5. Now generate Next, Previous and Cancel button events for Wizard control 6. Now Click on Next button to generate required field validation on text box 7. Now Click on Back or Cancel or extra button 8. No event will be fired on single time, you have to click twice for each and every event 9. Can we get fix or solution for this, ASAP? Please let me know if any further information is required, attaching the POC created to show the issue. Thanks for your help in advance! Arvinder Singh Arora
Setting RenderedSteps="Active" may be used as a workaround.
Until the issue is fixed, you can add a simple script that will remove the height attribute that causes the problem. Here are two examples: With a RadWindow's ContentTemplate <asp:Button ID="Button1" Text="open wnd" OnClientClick="openWnd(); return false;" runat="server" /> <telerik:RadWindow runat="server" ID="resultsWindow" Modal="true" Height="700px" Width="1100px" VisibleStatusbar="false" OnClientShow="repaintWizard"> <ContentTemplate> <telerik:RadWizard runat="server" ID="ResultsWizard" ActiveStepIndex="0" RenderedSteps="Active" DisplayProgressBar="false"> <WizardSteps> <telerik:RadWizardStep runat="server" ID="SelectStatus" StepType="Start" TabIndex="0"> <telerik:RadButton runat="server" ID="StatusWizard" ToggleType="Radio"> <ToggleStates> <telerik:RadButtonToggleState Text="Passed" /> <telerik:RadButtonToggleState Text="Failed" /> </ToggleStates> </telerik:RadButton> </telerik:RadWizardStep> </WizardSteps> </telerik:RadWizard> </ContentTemplate> </telerik:RadWindow> <script> function repaintWizard(sender, args) { $telerik.$(".rwzContent", sender.get_contentElement()).height(""); } function openWnd() { $find("<%=resultsWindow.ClientID%>").show(); } </script> In a simple hidden div: <script> function showDiv() { var theDiv = $get("testDiv"); theDiv.style.display = ""; $telerik.$(".rwzContent", theDiv).height(""); } </script> <asp:Button ID="Button1" Text="show div" OnClientClick="showDiv(); return false;" runat="server" /> <div id="testDiv" style="display:none;"> <telerik:RadWizard runat="server" ID="RadWizard1" ActiveStepIndex="0" RenderedSteps="Active" DisplayProgressBar="false"> <WizardSteps> <telerik:RadWizardStep runat="server" ID="RadWizardStep1" StepType="Start" TabIndex="0"> <telerik:RadButton runat="server" ID="RadButton1" ToggleType="Radio"> <ToggleStates> <telerik:RadButtonToggleState Text="Passed" /> <telerik:RadButtonToggleState Text="Failed" /> </ToggleStates> </telerik:RadButton> </telerik:RadWizardStep> </WizardSteps> </telerik:RadWizard>