/ / Problém pri získavaní hodnoty input type = rádio z asp.net childf stránky master stránky do c # - c #, html, asp.net

Problém pri získavaní hodnoty vstupného typu = rádio z asp.net detskej stránky hlavnej stránky na c # - c #, html, asp.net

Mám problém so získaním hodnoty typu vstupu = radio In c # Môj formulár je na hlavnej stránke nasledovne:

   <form id="form1" runat="server">
<asp:ContentPlaceHolder id="head" runat="server">
</asp:ContentPlaceHolder>
<div class="header">
<asp:Label ID="DoctorName" runat="server" Text=""     CssClass="Label"></asp:Label>
<asp:ImageButton ID="logout" ImageUrl="~/Logout.png" style ="float:right; margin-right:20px;" runat="server" Height="40" Width="30"/>
</div>
<div>
<asp:ContentPlaceHolder id="ContentPlaceHolder1" runat="server">

</asp:ContentPlaceHolder>
</div>
</form>

V mojej detskej stránke (c # file) som sa len snažil urobiťRequest.form ["MouvementYesNo"] ale vrátil hodnotu null, čo mám robiť ako inú metódu? mali by mať tieto dve tlačidlá rovnaké ID? alebo ako ich dostať podľa mena?

 <li>
<label>Troubles du mouvement <span class="required">*</span></label>
<input type="radio" runat="server" name="MouvementYesNo" value="Yes" checked> Yes
<input type="radio" runat="server" name="MouvementYesNo" value="No"> No


</li>

odpovede:

1 pre odpoveď č. 1

Pretože všetky prepínače HTML majú runat="server" atribútu, čo znamená, že „sú prístupné z kódu za sebou, dávajú rôzne ID kontroly a používajú sa if Skontrolujte, ktoré prepínač je vybraný.

Markup

<input id="RadioButton1" type="radio" runat="server" name="MouvementYesNo" value="Yes" checked> Yes
<input id="RadioButton2" type="radio" runat="server" name="MouvementYesNo" value="No"> No

Kód za sebou

protected void Button1_Click(object sender, EventArgs e)
{
if (RadioButton1.Checked == true)
{
// do something
}
else if (RadioButton2.Checked == true)
{
// do something else
}

// other stuff
}

Všimnite si, že ak chcete použiť Request.Form, atribút kontroly servera HTML (t. j. runat="server") by sa mali odstrániť Request.Form obsahuje hodnotu null, ak nie sú vybraté žiadne vstupné prvky rádiového tlačidla.

Poznámka:

Lepšie používať RadioButtonList ovládanie servera takto:

<asp:RadioButtonList ID="MouvementYesNo" runat="server">
<asp:ListItem value="Yes">Yes</asp:ListItem>
<asp:ListItem value="No">No</asp:ListItem>
</asp:RadioButtonList>

Hodnotu prepínača, ktorý ste vybrali, môžete získať neskôr:

var selected = MouvementYesNo.SelectedValue;

Podobné vydanie:

Získanie hodnoty z prepínača html - v aspx-c #