none
MVC Checkbox RRS feed

  • Pregunta

  • Hola tengo el siguiente incoveniente. Estoy desarrollando una aplicacion en MVC y genero una tabla donde le paso una Lista de Dias y una lista de horas. La lista de dias la uso para generar las columnas con el nombre del dia correspondiente y la lista de hora la uso para generar, tanta cantidad de checkbox como horas cargadas tenga.

    Mi problema es el siguiente, necesito saber como hago para obtener los dias con sus correspondiente horas chequeadas??

    Soy nuevo en MVC y no le encuentro la vuelta a como realizar esto

    El codigo es el siguiente:

    @model Seminario5.Models.Horarios
    @{
        ViewBag.Title = (Model.ProfMat_ID > 0 ? Model.HorariosID + " " + Model.ProfMat_ID : "Nuevo registro");
        List<Seminario5.Models.Horas> horas = ViewBag.Horas;
        List<Seminario5.Models.Dias> ListDias = ViewBag.Dias;
        List<Seminario5.Models.Ubicacion> ubicaciones = ViewBag.Ubicacion;

    }

    <ol class="breadcrumb">
        <li><a href="~/">Profesor - Materia</a></li>
        <li class="active">@(Model.ProfMat_ID > 0 ? Model.HorariosID + " " + Model.ProfMat_ID : "Nuevo registro")</li>
    </ol>

    <div>

        <div class="tab-content">
            <div role="tabpanel" class="tab-pane active" id="informacion">

                @using (Html.BeginForm("Guardar", "Horarios", FormMethod.Post, new { id = "frm-alumno" }))
                {
                    @Html.HiddenFor(x => x.ProfMat_ID)
                    <div class="panel panel-default">
                        <div class="panel-heading">Información personal</div>
                        <div class="panel-body">
                            <div class="form-group">
                                @Html.LabelFor(x => x.ProfMat_ID)
                                @Html.TextBoxFor(x => x.ProfMat_ID, new { @class = "form-control" })
                                @Html.ValidationMessageFor(x => x.ProfMat_ID, null, new { @class = "label label-danger" })
                            </div>
                            <div class="form-group">
                                    @Html.LabelFor(x => x.Ubicacion)
                                    @Html.TextBoxFor(x => x.Ubicacion, new { @class = "form-control" })
                                    @Html.ValidationMessageFor(x => x.Ubicacion, null, new { @class = "label label-danger" })
                                </div>

                            @*<div class="form-group">
                                @Html.LabelFor(x => x.Ubicacion, "Ubicacion", htmlAttributes: new { @class = "control-label col-md-2" })
                                <div class="col-md-10">
                                    @Html.DropDownList("Ubicacion", null, htmlAttributes: new { @class = "form-control" })
                                    @Html.ValidationMessageFor(x => x.Ubicacion, "", new { @class = "text-danger" })
                                </div>
                            </div>*@

                        </div>
                    </div>

                    <div class="panel panel-default">
                        <div class="panel-heading">HORARIOS</div>
                        <div class="panel-body">
                            @foreach (var D in ListDias)
                            {
                                <label class="col-md-1 control-label" for="checkboxes">@D.Descripcion</label>
                                <div class="col-md-1">
                                    @foreach (var c in horas)
                                    {
                                        var tomado = false;

                                        foreach (var c2 in Model.Horas)
                                        {
                                            if (c.HoraID == c2.HoraID)
                                            {
                                                tomado = true;
                                                break;
                                            }
                                        }
                                        <div class="checkbox">
                                            <label>
                                                <input type="checkbox" @(tomado ? "checked" : "") name="horarios_seleccionados" id="checkboxes-0" value="@c.HoraID">
                                                @c.Hora_Desde
                                            </label>
                                        </div>
                                    }

                                    <input type="checkbox" name="dias_seleccionados" id="int" value="@D.DiaID">

                                </div>
                            }

                            @Html.ValidationMessage("horarios", new { @class = "label label-danger", id = "cursos-validacion" })
                        </div>
                    </div>

                    <div class="text-right">
                        <button type="submit" class="btn btn-primary">Guardar</button>
                    </div>
                }
            </div>
        </div>
    </div>

    martes, 8 de noviembre de 2016 20:16