Skip to content Skip to sidebar Skip to footer

How To Find Checked Radiobutton Inside Repeater Item?

I have a Repeater control on ASPX-page defined like this:

Solution 1:

You could always use Request.Form to get the submitted radio button:

varvalue = Request.Form["answerVariants"];

I think the submitted value defaults to the id of the <asp:RadioButton /> that was selected, but you can always add a value attribute - even though it's not officially an <asp:RadioButton /> property - and this will then be the submitted value:

<asp:RadioButtonID="answerVariantRadioButton"runat="server"GroupName="answerVariants"Text='<%# DataBinder.Eval(Container.DataItem, "Text")%>'"
    value='<%# DataBinder.Eval(Container.DataItem, "SomethingToUseAsTheValue")%>' />

Solution 2:

Since You are using javascript already to handle the radio button click event on the client, you could update a hidden field with the selected value at the same time.

Your server code would then just access the selected value from the hidden field.

Solution 3:

I'm pretty sure that the only thing you could use LINQ to Objects for here would be to take the conditions from within the foreach loop and move them to a where clause.

RadioButton checked = 
    (from item in answerVariantRepeater.Items
    let radioButton = (RadioButton)item.FindControl("answerVariantRadioButton")
    where radioButton.Checked
    select radioButton).FirstOrDefault();

Post a Comment for "How To Find Checked Radiobutton Inside Repeater Item?"