So I have a repeater that creates <li> elements. This is the codebehind for the OnItemDataBound
var categoryList = (ProductCategoryObject) e.Item.DataItem;
var category = ((HtmlAnchor) e.Item.FindControl("category"));
category.HRef = "javascript:void(0);";
category.InnerText = categoryList.Name;
category.Attributes.Add("onclick", "javascript:$('#ProductCategory').val('" + categoryList.Id + "');$('button.product-categories span').text('" + categoryList.Name + "');");
This sets the value of an input of type hidden and now my question is how do I get that value on button click? It appears to disappear on postback and I've tried Request["ProductCategory"] and Request.Form["ProductCategory"]
Here is the markup:
<div class="input-group margin-bottom-30">
<div id="divCategories" runat="server" class="input-group-btn">
<button type="button" class="btn blue dropdown-toggle product-categories" data-toggle ="dropdown">
<asp:Label runat="server" ID="lblCategory">All Categories</asp:Label> <i class="icon-angle-down"></i>
</button>
<ul runat="server" ID="ulCategory" class="dropdown-menu">
<asp:Repeater runat="server" id="rptCategories" OnItemDataBound="CategoriesOnItemDataBound">
<ItemTemplate>
<li>
<a runat="server" id="category"></a>
</li>
</ItemTemplate>
</asp:Repeater>
</ul>
<input id="ProductCategory" type="hidden" />
</div>
<asp:TextBox runat="server" ID="txtSearch" CssClass="form-control"></asp:TextBox>
<div class="input-group-btn">
<asp:LinkButton ID="btnFilter" runat="server" CausesValidation="True" ValidationGroup="BaseValidationGroup" CssClass="btn green" OnClick="SearchBtnOnClick"> Search <i class="icon-search"></i> </asp:LinkButton>
</div>
</div>
So I figured it out, I had to change my the markup for my input control from
<input id="ProductCategory" type="hidden" />
to
<input id="ProductCategory" name="ProductCategory" type="hidden" />
So, essentially, I was missing the name tag which is needed for Request.Form["ProductCategory"] to work.
Related
I have a RadioButtonList inside a repeater and I want to clear the checked value on the OnChange of a textbox
<asp:Repeater ID="QuestionsRpt" runat="server">
<HeaderTemplate>
<div class="form-horizontal form-condensed">
</HeaderTemplate>
<ItemTemplate>
<div class="form-group">
<label class='col-sm-6 control-label' style="text-align:left"><span id="Question" runat="server"><%# Eval("Name_" + UserLanguage.ToUpper()) %></span> <i class="fa fa-question-circle" runat="server" visible='<%# Eval("Description_" + UserLanguage.ToUpper()).ToString() != ""%>' data-toggle="tooltip" title='<%# Eval("Description_" + UserLanguage.ToUpper()).ToString()%>'></i></label>
<div class="col-sm-6">
<asp:RadioButtonList ID="RadioButtonList" runat="server" CssClass="RadioButtonList" AutoPostBack="true"
DataSource='<%# (Eval("ListOfChoice_" + UserLanguage.ToUpper()).ToString()).Split(";".ToCharArray()) %>'
Visible='<%# (Convert.ToInt32(Eval("Type_IsSingleChoice")) == 1)%>'>
</asp:RadioButtonList>
<input type='text' id="OtherOptionTB" runat="server"
placeholder='<%# GetLocalResourceObject("Other Option") %>' class="form-control otherOption input-sm" value=''
autocomplete="off" visible='<%# Eval("AllowFreeText")%>' onchange="ResetRadioButtonList()"/>
</div>
</div>
<br />
</ItemTemplate>
<FooterTemplate>
</div>
</FooterTemplate>
Here is the jquery:
<script type="text/javascript">
function ResetRadioButtonList() {
$(event.target).closest('.form-group').find('.RadioButtonList').prop('checked', false);
}
When I log $(event.target).closest('.form-group').find('.RadioButtonList') I do get the the RadioButtonList but I can't seem to figure out how to clear it correctly.
I found the problem...
I need to access all the inputs in my RadioButtonList
Here is the updated Jquery:
function ResetRadioButtonList() {
$(event.target).closest('.form-group').find('.RadioButtonList').find('input:radio').prop('checked', false);}
i am developing application in asp.net c#, in that i have a problem .
the problem is
i have three fields in a asp.net page, in that it having Bank Name, Branch, and IFSC Code, these three is mandatory to fill when i click save button,
but when i click search & clear button also it should ask to fill these fields.
how to restrict this when click other buttons
"please fill in this field"..
suppose if i search sbi bank only, it asks to enter every field.
MY CODE
Enter Bank
</div>
<div class="form-group col-md-3">
<label for="exampleInputEmail1">
Enter Branch</label>
<asp:TextBox ID="txtBranchName" runat="server" type="text" CssClass="form-control" PlaceHolder="Enter Branch" required />
</div>
<div class="form-group col-md-3">
<label for="exampleInputEmail1">
Enter IFSC Code</label>
<asp:TextBox ID="txtIFSCCode" runat="server" type="text" CssClass="form-control" PlaceHolder="Enter IFSC Code" required />
</div>
</td>
</tr>
</table>
<br />
<br />
<table border="0px" cellpadding="4px" cellspacing="4px" align="center" width="180px">
<tr>
<td>
<asp:Button ID="btnSave" runat="server" ValidationGroup="valInsert" Text="Save" OnClick="btnSave_Click" ToolTip="Save" CssClass="btn btn-success" />
</td>
<td>
<asp:Button ID="btnClear" runat="server" Text="Clear" OnClick="btnClear_Click" ToolTip="Clear / Refresh" CssClass="btn btn-default" />
</td>
<td>
<asp:Button ID="btnSearch" runat="server" ValidationGroup="valInsert" Text="Search" OnClick="btnSearch_Click" ToolTip="Search" CssClass="btn btn-success" /></td>
<td>
<asp:Button ID="btnPrint" runat="server" Text="Print" OnClientClick="return PrintPanel();" ToolTip="Print" CssClass="btn btn-default" />
</td>
</tr>
</table>
Try to put formnovalidate in your search button code
<asp:Button ID="btnSearch" runat="server" Text="Search" OnClick="btnSearch_Click" ToolTip="Search" CssClass="btn btn-success" formnovalidate />
Use the Validation Group in ASP.net
<asp:TextBox ID="txtCustomer" class="form-control" runat="server"></asp:TextBox>
<asp:RequiredFieldValidator ID="rfvName" runat="server"
ControlToValidate="txtCustomer" ForeColor="Red"
ToolTip="Please enter name" ValidationGroup="Validate" Display="Dynamic">* Required</asp:RequiredFieldValidator>
<asp:Button ID="btnSave" CssClass="btn btn-default" runat="server" Text="Save" ToolTip="Save Record" ValidationGroup="Validate" OnClick="btnSave_Click"/>
<asp:Button ID="btnClear" CssClass="btn btn-default" runat="server" Text="Clear" ToolTip="Clear / Refresh" OnClick="btnClear_Click" />
<asp:Button ID="btnClose" CssClass="btn btn-default" runat="server" Text="Close" ToolTip="Go To Main form." OnClick="btnCancle_Click" />
Try using jquery/javascript for validations.
Write button search and save click events in jquery and validate as you like.
$('#btnSave').click(function(){
//code for required field validation
});
The property of search and clear button ( causes Validation ) ..you should make it false ;)
I try to ajaxify RadNumericTextBoxs in Edit Form of Rad grid using (RadAjaxManager or RadAjaxManagerProxy) but i failed .
all i want to do is :
when text changed of (txt_CashAndEquivalents,txt_ShortTermInvestments) sum the values of both text boxes and set the result in txt_OneTotal without full postback .
<EditFormSettings EditFormType="Template">
<EditColumn UniqueName="EditCommandColumn1" FilterControlAltText="Filter EditCommandColumn1 column">
</EditColumn>
<FormTemplate>
<div class="FinancePositioncontainers">
<div class="FinancePosition-container" id="decorationZone">
<h4>Finance</h4>
<fieldset>
<legend>List</legend>
<div class="formRow" style="padding-right: 10px; padding-left: 10px;">
<h5>Bal</h5>
<label for="txt_CashAndEquivalents">bal1:</label>
<telerik:RadNumericTextBox ID="txt_CashAndEquivalents" runat="server" Text='<%# Eval("CashAndEquivalents")%>' Type="Number" DataType="System.Decimal" Width="160" NumberFormat-GroupSizes="3" AutoPostBack="True" TabIndex="1" OnTextChanged="txt_CashAndEquivalents_TextChanged"></telerik:RadNumericTextBox>
<div>
</div>
<label for="txt_ShortTermInvestments">bal2:</label>
<telerik:RadNumericTextBox ID="txt_ShortTermInvestments" runat="server" Text='<%# Eval("ShortTermInvestments")%>' Type="Number" DataType="System.Decimal" Width="160" NumberFormat-GroupSizes="3" TabIndex="2" AutoPostBack="True" OnTextChanged="txt_CashAndEquivalents_TextChanged"></telerik:RadNumericTextBox>
<div>
</div>
<hr />
<label for="txt_OneTotal">total :</label>
<telerik:RadNumericTextBox ID="txt_OneTotal" runat="server" ReadOnly="true" Type="Number" DataType="System.Decimal" Width="160" NumberFormat-GroupSizes="3"></telerik:RadNumericTextBox>
<div>
</div>
</div>
<asp:LinkButton ID="btnUpdate" runat="server" CommandName='<%# (Container is GridEditFormInsertItem) ? "PerformInsert" : "Update" %>'
ValidationGroup="Main" CssClass="btn btn-primary btn-xs white_cr"><span class="glyphicon glyphicon-floppy-disk"></span> <%# (Container is GridEditFormInsertItem) ? "Uppdate" %>
</asp:LinkButton>
<asp:LinkButton ID="btnCancel" runat="server" CausesValidation="False" CommandName="Cancel"
CssClass="btn btn-primary btn-xs white_cr"><span class="glyphicon glyphicon-ban-circle"></span>Cancel</asp:LinkButton>
<br />
<br />
</div>
</div>
</FormTemplate>
</EditFormSettings>
One approach you can consider is to utilise the client event, OnValueChanged of RadNumbericTextBox control, instead of the server side event.
For example,
<telerik:RadNumericTextBox ID="txt_CashAndEquivalents" runat="server" Text='<%# Eval("CashAndEquivalents")%>' Type="Number" DataType="System.Decimal" Width="160" NumberFormat-GroupSizes="3" TabIndex="1">
<ClientEvents OnValueChanged="DoSum" />
</telerik:RadNumericTextBox>
<script type="text/javascript">
function DoSum(sender, eventArgs)
{
var txt_ShortTermInvestments = $find('<%=txt_ShortTermInvestments.ClientID %>');
var txt_OneTotal = $find('<%=txt_ShortTermInvestments.ClientID %>');
var val_CashAndEquivalents = sender.get_value();
var val_ShortTermInvestments = txt_ShortTermInvestments.get_value();
txt_OneTotal.set_value(val_CashAndEquivalents + val_ShortTermInvestments);
}
</script>
Above code is just demonstrating the idea and hasn't been tested. So give it a go and see if it works for you or not.
For more details on the available client side events, please refer to the following link.
http://docs.telerik.com/devtools/aspnet-ajax/controls/numerictextbox/client-side-programming/radnumerictextbox-client-object#radnumerictextbox-client-object
I want to know how can I programmatically swap between validation messages once the textbox focus is out.
I have this markup:
<div class="form-group" style="width: 100%;" id="divFirstName" runat="server">
<input type="text" placeholder="Student First Name" runat="server" id="txtFirstName" clientidmode="Static" value="" class="form-control" maxlength="30" />
<span class="glyphicon glyphicon-ok form-control-feedback" aria-hidden="true" id="tt2" clientidmode="Static" runat="server" Visible="False"></span>
<span id="inputSuccess2Status" runat="server" clientidmode="Static" Visible="False" class="sr-only">(success)</span>
<span class="glyphicon glyphicon-remove form-control-feedback" Visible="False" runat="server" aria-hidden="true"></span>
<span id="inputError2Status" class="sr-only" runat="server" Visible="False">(error)</span>
</div>
Then I have this script in case there is a value in the textbox:
$(this).attr("aria-describedby", "inputSuccess2Status");
$("#tt2").attr("visibility", "visible");
$("#inputSuccess2Status").attr("visibility", "visible");
No glyphicon is shown once the script is executed.
Do you see anything wrong? Am I overdoing some things here? What I simply want to do is on focus out of the control, if there is a value show glyphicon-ok otherwise show glyphicon-remove.
is this what you we're looking for?
HTML
<div class="form-group has-feedback" style="width: 100%;" id="divFirstName" runat="server">
<input type="text" placeholder="Student First Name" runat="server" id="txtFirstName" clientidmode="Static" value="" class="form-control" maxlength="30" />
</div>`
Jquery
$('#txtFirstName').change(function(){
$('.form-control-feedback').remove();
if($(this).val().length > 0){
$('#divFirstName').append('<span class="glyphicon glyphicon-ok form-control-feedback" aria-hidden="true" id="tt2" clientidmode="Static" runat="server" Visible="False"></span>');
}else{
$('#divFirstName').append('<span class="glyphicon glyphicon-remove form-control-feedback" aria-hidden="true" id="tt2" clientidmode="Static" runat="server" Visible="False"></span>');
}
});
Live Preview
jsFiddle Example
I have an asp.net 4.5 create user form where the first 2 steps are laid out using the TemplatedWizardStep.
In step 2 I have some javascript that is supposed to react to radio button click actions.
I originally had the radio actions in step 1 and the javascript worked as expected.
Since I moved it to step 2, it no longer works.
I went to firebug and set a watch on the script, but the script was not available in step 2. In page source view none of the controls for step 2 were included, only controls from step 1. I was on step 2 when I checked page source view.
Does anyone know how to make this work as expected?
Thanks
Create User Wizard
<asp:CreateUserWizard runat="server" ID="RegisterUser" LoginCreatedUser="false" ViewStateMode="Disabled"
OnCreatedUser="RegisterUser_CreatedUser" ActiveStepIndex="0"
AnswerRequiredErrorMessage="Please answer selected question"
DuplicateUserNameErrorMessage="The user name is already in the system. Enter another user name.">
<LayoutTemplate>
<asp:PlaceHolder runat="server" ID="wizardStepPlaceholder" />
<asp:PlaceHolder runat="server" ID="navigationPlaceholder" />
</LayoutTemplate>
<WizardSteps>
<asp:TemplatedWizardStep ID="wzdStep1" runat="server" StepType="Start">
<ContentTemplate>
<asp:UpdatePanel ID="UpdatePanelStep1" UpdateMode="Conditional" runat="server">
<ContentTemplate>
<fieldset>
<ul>
<li>
<asp:Label ID="lblFullName" runat="server" AssociatedControlID="txtFullName">Full name</asp:Label>
<input runat="server" data-rule-minlength="2" data-rule-required="true" class="controltext" type="text" placeholder="Enter Full Name" id="txtFullName" />
</li>
<li>
<asp:Label ID="lblCountry" runat="server" AssociatedControlID="ddCountry">Country</asp:Label>
<asp:DropDownList ID="ddCountry" AppendDataBoundItems="true" AutoPostBack="true" DataSourceID="lnqCountry" DataTextField="CntryName" DataValueField="CntryID" CssClass="controltext" runat="server">
<asp:ListItem Value="-1">---Select Country---</asp:ListItem>
</asp:DropDownList>
<asp:LinqDataSource ID="lnqCountry" runat="server"
ContextTypeName="ClientStudio.SalonDataClassesDataContext" OrderBy="CntryName"
TableName="CntrysLUs">
</asp:LinqDataSource>
</li>
<li>
<asp:Label ID="lblStates" runat="server" AssociatedControlID="ddStates">State</asp:Label>
<div class="input-append controltext" id="divStateSelect" style="display: inline-block">
<asp:DropDownList ID="ddStates" data-rule-required="true" AutoPostBack="false" EnableViewState="true" AppendDataBoundItems="true" DataSourceID="lnqStates" DataTextField="StateName" DataValueField="StateID" CssClass="controltext" runat="server">
<asp:ListItem Value="-1">---Select State---</asp:ListItem>
</asp:DropDownList>
<button class="button button-basic" id="btnAddState" onclick="addState();" type="button">
Add
</button>
</div>
<div class="input-append input-prepend" id="divStateAdd" style="display: none">
<span class="add-on">
<i class="icon-edit"></i>
</span>
<input class="controltext" runat="server" id="txtStateName" type="text" placeholder="Enter State Name" />
<button class="button button-basic" runat="server" id="btnSaveState" onclick="saveState">
Save!
</button>
<button class="button button-basic" onclick="clearState();" id="btnClearState" type="button">
Clear
</button>
</div>
<asp:LinqDataSource ID="lnqStates" runat="server"
ContextTypeName="ClientStudio.SalonDataClassesDataContext" OrderBy="StateName"
TableName="StatesLUs" Where="CntryID == #CntryID"
Select="new (StateID, StateName, CntryID)">
<WhereParameters>
<asp:ControlParameter ControlID="ddCountry" Name="CntryID"
PropertyName="SelectedValue" Type="Int32" />
</WhereParameters>
</asp:LinqDataSource>
</li>
<li>
<asp:Label ID="lblCity" runat="server" AssociatedControlID="txtCity">City Name</asp:Label>
<input runat="server" data-rule-minlength="2" data-rule-required="true" class="controltext" type="text" placeholder="Enter City Name" id="txtCity" />
</li>
</ul>
</fieldset>
</ContentTemplate>
</asp:UpdatePanel>
</ContentTemplate>
<CustomNavigationTemplate>
<div class="pull-right">
<asp:Button ID="Button1" runat="server" CssClass="btn btn-success btn-large" CommandName="MoveNext" Text="Next" />
</div>
</CustomNavigationTemplate>
</asp:TemplatedWizardStep>
<asp:TemplatedWizardStep ID="wzdStep2" StepType="Auto">
<ContentTemplate>
<fieldset>
<ul>
<li>
<asp:Label ID="lblStylist" runat="server" AssociatedControlID="RadioButtonList1">Do you currently have a stylist or stylists?</asp:Label>
<asp:RadioButtonList ID="RadioButtonList1" AutoPostBack="false" onclick="javascript:radio(this);" CssClass="controltext"
RepeatLayout="Table" RepeatDirection="Vertical" RepeatColumns="1"
runat="server">
<asp:ListItem Value="1" Selected="True"> <i> Yes, I have a stylist(s) I see on a regular basis</i></asp:ListItem>
<asp:ListItem Value="0"> <i> No, I am looking for a new stylist</i></asp:ListItem>
</asp:RadioButtonList>
</li>
<li id="liSearch" style="display: block">
<asp:Label ID="Label1" runat="server">Find by Salon or Stylist Name</asp:Label>
<div class="clear"></div>
<br />
<div class="input-append input-prepend">
<span class="add-on">
<i class="icon-search"></i>
</span>
<input class="controltext" type="text" id="FindBySalon" placeholder="Enter Salon Name..."></input>
<button class="button button-basic" onclick="findBySalon();" id="btnFindBySalon" type="button">
Find by Salon!
</button>
</div>
<div class="clear"></div>
<div class="input-append input-prepend">
<span class="add-on">
<i class="icon-search"></i>
</span>
<input class="controltext" type="text" id="FindByStylist" placeholder="Enter Stylists Name..."></input>
<button class="button button-basic" onclick="findByStylist();" id="btnFindByStylist" type="button">
Find by Stylists Name!
</button>
</div>
</li>
<li id="liResults" style="display: none">
<asp:Label ID="lblResults" runat="server" AssociatedControlID="ddResults">Search Results</asp:Label>
<asp:DropDownList ID="ddResults" AutoPostBack="true" OnSelectedIndexChanged="ddResults_SelectedIndexChanged" CssClass="controltext" DataValueField="StylistID" DataTextField="Results" runat="server"></asp:DropDownList>
</li>
<li id="liSelf" style="display: none">
<asp:Label ID="Label2" runat="server" AssociatedControlID="ddSelf">Is this you?</asp:Label>
<asp:DropDownList ID="ddSelf" CssClass="controltext" DataValueField="CustomerID" DataTextField="Results" runat="server"></asp:DropDownList>
</li>
</ul>
</fieldset>
</ContentTemplate>
<CustomNavigationTemplate>
<div class="pull-right">
<asp:Button ID="Button2" runat="server" CssClass="btn btn-success btn-large" CommandName="MovePrevious" Text="Previous" />
<asp:Button ID="Button3" runat="server" CssClass="btn btn-success btn-large" CommandName="MoveNext" Text="Next" />
</div>
</CustomNavigationTemplate>
</asp:TemplatedWizardStep>
<asp:CreateUserWizardStep runat="server" ID="RegisterUserWizardStep">
<ContentTemplate>
<p class="message-info">
Passwords are required to be a minimum of <%: Membership.MinRequiredPasswordLength %> characters in length.
</p>
<p class="validation-summary-errors">
<asp:Literal runat="server" ID="ErrorMessage" />
</p>
<fieldset>
<ol>
<li>
<asp:Label runat="server" AssociatedControlID="UserName">User name</asp:Label>
<asp:TextBox runat="server" ID="UserName" />
<asp:RequiredFieldValidator runat="server" ControlToValidate="UserName"
CssClass="field-validation-error" ErrorMessage="The user name field is required." />
</li>
<li>
<asp:Label runat="server" AssociatedControlID="Email">Email address</asp:Label>
<asp:TextBox runat="server" ID="Email" TextMode="Email" />
<asp:RequiredFieldValidator runat="server" ControlToValidate="Email"
CssClass="field-validation-error" ErrorMessage="The email address field is required." />
</li>
<li>
<asp:Label runat="server" AssociatedControlID="Password">Password</asp:Label>
<asp:TextBox runat="server" ID="Password" TextMode="Password" />
<asp:RequiredFieldValidator runat="server" ControlToValidate="Password"
CssClass="field-validation-error" ErrorMessage="The password field is required." />
</li>
<li>
<asp:Label runat="server" AssociatedControlID="ConfirmPassword">Confirm password</asp:Label>
<asp:TextBox runat="server" ID="ConfirmPassword" TextMode="Password" />
<asp:RequiredFieldValidator runat="server" ControlToValidate="ConfirmPassword"
CssClass="field-validation-error" Display="Dynamic" ErrorMessage="The confirm password field is required." />
<asp:CompareValidator runat="server" ControlToCompare="Password" ControlToValidate="ConfirmPassword"
CssClass="field-validation-error" Display="Dynamic" ErrorMessage="The password and confirmation password do not match." />
</li>
<li>
<asp:Label ID="lblSecurityQ" runat="server" AssociatedControlID="Question">Select Security Question</asp:Label>
<asp:DropDownList ID="Question" CssClass="controltext" runat="server">
<asp:ListItem>What is your mother's maiden name?</asp:ListItem>
<asp:ListItem>What city were you born in?</asp:ListItem>
<asp:ListItem>What city was your mother born in?</asp:ListItem>
<asp:ListItem>What is your favorite sport?</asp:ListItem>
<asp:ListItem>What is your favorite pets name?</asp:ListItem>
<asp:ListItem>What grade school did you graduate from?</asp:ListItem>
<asp:ListItem>What is your favorite meal?</asp:ListItem>
<asp:ListItem>What is your favorite soap?</asp:ListItem>
</asp:DropDownList>
</li>
<li>
<asp:Label ID="lblSecurityAns" runat="server" AssociatedControlID="Answer">Security Answer</asp:Label>
<asp:TextBox ID="Answer" CssClass="controltext" runat="server"></asp:TextBox>
<asp:RequiredFieldValidator ID="RequiredFieldValidator4" runat="server" ControlToValidate="Answer"
CssClass="field-validation-error" Display="Dynamic" ErrorMessage="Please enter the answer to selected question above." />
</li>
</ol>
</fieldset>
</ContentTemplate>
<CustomNavigationTemplate>
<div class="pull-right">
<asp:Button ID="Button4" runat="server" CssClass="btn btn-success btn-large" CommandName="MovePrevious" Text="Previous" />
<asp:Button ID="Button5" runat="server" CssClass="btn btn-success btn-large" CommandName="MoveNext" Text="Next" />
</div>
</CustomNavigationTemplate>
</asp:CreateUserWizardStep>
<asp:CompleteWizardStep ID="wzdComplete">
<ContentTemplate>
<p>
Your account has been created, but before you can login you must first verify your email address.
</p>
<p>
A message has been sent to the email address you specified. Please check your email inbox and follow the instructions in that email to verify your account.
</p>
<br />
</ContentTemplate>
<CustomNavigationTemplate>
<asp:Button ID="Button6" runat="server" CssClass="btn btn-success btn-large" CommandName="MovePrevious" Text="Previous" />
<asp:Button ID="Button7" runat="server" CssClass="btn btn-danger btn-large" CommandName="Cancel" Text="Cancel" />
<asp:Button ID="Button8" runat="server" CssClass="btn btn-primary btn-large" CommandName="MoveComplete" Text="Next" />
</CustomNavigationTemplate>
</asp:CompleteWizardStep>
</WizardSteps>
</asp:CreateUserWizard>
JavaScript
<script type="text/javascript">
function radio(cnt) {
var radioButtons = document.getElementById("ContentPlaceHolder1_RegisterUser_ctl05_RadioButtonList1");
var inputs = radioButtons.getElementsByTagName("input");
var li = document.getElementById("liSearch");
var liResults = document.getElementById("liResults");
var liSelf = document.getElementById("liSelf");
if (inputs[1].checked) {
li.style.display = "none";
liResults.style.display = "none";
liSelf.style.display = "none";
} else {
li.style.display = "block";
liResults.style.display = "block";
liSelf.style.display = "block";
}
}
</script>
I suppose that you set by hand the id
ContentPlaceHolder1_RegisterUser_ctl05_RadioButtonList1
and that id change when you move it to step2.
Change it to dynamic get the id as:
var radioButtons = document.getElementById("<%=RadioButtonList1.ClientID%>");
and it will work.