How to configure Checkboxes Materialize Css in Web

2019-09-20 18:21发布

问题:

How do I configure Checkboxes in Asp.Net MVC Razor.

Since in the documentation we have the following configuration Materialize for checkboxes :

<p>
   <label>
     <input type = "checkbox" />
     <span> Network </span>
   </label>
</p>

And in Razor I could not perform this configuration.

<div class = "input-field col s12">
        @Html.EditorFor (model => model.AnnualDestaque)
        @Html.LabelFor (model => model.AnnualDestaque)
        @Html.ValidationMessageFor (model => model.AnnualDestaque, "", new {@class = "text-danger"})
</div>

回答1:

Please include model Name in your cshtml page

@model WebApplication3.Models.Test
@{
 ViewBag.Title = "Home Page";
 }


@using (Html.BeginForm("Save", "Home", FormMethod.Post))
 {
  <div class="row">
  <div class="col-md-4">
    @Html.TextBoxFor(m => m.EmployeeName)
    @Html.CheckBoxFor(m=>m.IsSelected)

  </div>

   <input type="submit" value="Save" />

  </div>
}

Model

public class Test
{
    public string EmployeeName { get; set; }
    public bool IsSelected { get; set; }
}


回答2:

If you just want to have a checkbox binded with your model like that :

public class Network
{
    public bool Selected { get; set; }
    public string Name { get; set; }
}

Just use :

@Html.CheckBoxFor(m=>m.Selected)
@Html.LabelFor(m=>m.Name)


回答3:

I was able to solve it, and I am passing the answer.

I used Html Helper Documentation Html Helper MVC

It worked perfectly without mistakes the way it's meant to be.

<div class="input-field col s12">
    <label>
        <input data-val="true"
                data-val-required="The Advertisement field is required."
                id="Advertisement"/**** m => m.Advertisement ****/
                name="Advertisement"/**** m => m.Advertisement ****/
                type="checkbox"
                value="true" />

        <span>Anuncio Destaque</span>

        <input name="Advertisement" type="hidden" value="false" />
    </label>
</div>


回答4:

You can make it work doing this:

<label>
<input type="checkbox" name="FIELDNAME" id="FIELDNAME" value="true" class="filled-in" @(Model.FIELDNAME? "checked" : "") />
<span>@Html.DisplayNameFor(model => model.FIELDNAME)</span>
</label>
<input name="FIELDNAME" type="hidden" value="false" />