2011-05-13 3 views
3

Fondamentalement, je veux que mes boutons radio à vérifier en fonction d'une valeur de mon point de vue modèle de contrôle, ci-dessous est un exemple de code et ma tentative à ce jour:ASP.NET MVC en utilisant la valeur bool pour le bouton radio vérifié la propriété

<tr> 
       <td> 
       <label for="brakepads" class="label3">Brake Pads:</label></td> 
       <%= Html.TextBox("brakepads", Model.brakepads, new {style="display:none" })%> 
       <%= Html.ValidationMessage("brakepads", "*") %> 

       <td><label for="brakefluid" class="label4" >Passed:</label> 
       <asp:RadioButton ID="RadioButton15" runat="server" GroupName="b" value="True" Checked="<%= Model.brakepads.Value %>" onclick="brakepads.value=(this.value)" /></td> 
       <td><label for="brakefluid" class="label4" >Failed:</label> 
       <asp:RadioButton ID="RadioButton16" runat="server" GroupName="b" value="False" Checked="<% Model.brakepads.Value %>" onclick="brakepads.value=(this.value)"/></td> 
       </tr> 

Je reçois ce qui suit à l'exécution: Impossible de créer un objet de type 'System.Boolean' à partir de sa représentation sous forme de chaîne '<% = Model.brakepads.Value%>' pour la propriété 'Checked'.

J'ai essayé d'utiliser (bool) pour lancer, mais cela n'a pas fonctionné non plus, donc je ne sais pas quoi faire ensuite. Ma seule préoccupation est que parfois le booléen sera nul, si cela ne brise pas la fonctionnalité, alors ça va.

Répondre

0

Soit vous utilisez Html.RadioButton ou un autre champ caché MVC et lier Model.brakepads à lui. Utilisez javascript pour définir la propriété Vérifié du bouton radio.

2

Vous mélangez des contrôles WebForms (RadioButton) avec des aides ASP.NET MVC (Html.TextBox), je pense que c'est une pratique dangereuse.

Vous pouvez essayer d'utiliser la méthode d'aide Html.RadioButton() pour rendre un bouton radio:

<td><label for="brakefluid" class="label4" >Passed:</label> 
<%= Html.RadioButton("brakefluid", true, Model.brakepads.Value) %></td> 
<td><label for="brakefluid" class="label4" >Failed:</label> 
<%= Html.RadioButton("brakefluid", false, !Model.brakepads.Value) %></td>  
6

Comment faire une liste de bouton radio booléenne dans ASP.NET MVC 3 rasoir C#

Ce que nous voulons que le HTML à

Apply discount: 
<input type="radio" name="apply_discount" value="yes" /> Yes 
<input type="radio" name="apply_discount" value="no" /> No 

Nous avons besoin d'une propriété modèle

public bool ApplyDiscount { get; set; } 

Maintenant tout ce que nous avons à faire est de convertir le html en rasoir

Apply discount: 
@Html.RadioButtonFor(m => m.ApplyDiscount, true) Yes 
@Html.RadioButtonFor(m => m.ApplyDiscount, false) No 

J'espère que cela aide.

+0

bien ............ – shanish

Questions connexes