none
Problema al ordenar un DropDownList con jquery RRS feed

  • Pregunta

  • Con este código llamo los datos

    try
                {
                    var inscripcion = db.InscripcionAsignatura.First(x => x.IdInscripcionAsignatura == id);
                    SemilogiaFase1_MultiplesEventos.ViewModels.VMAdministracionTutoresYGrupos.DatosObserCon nuevo = new SemilogiaFase1_MultiplesEventos.ViewModels.VMAdministracionTutoresYGrupos.DatosObserCon();
                    nuevo.IdInscripcion = inscripcion.IdInscripcionAsignatura;
                    nuevo.Observaciones = inscripcion.ObservacionesRendimientoAcademico;
                    nuevo.IdRendimiento = inscripcion.IdRendimientoAcademico != null? inscripcion.IdRendimientoAcademico.Value:1;

                    var Idredimiento = db.RendimientoAcademico.ToList();





                    foreach (var a in Idredimiento.OrderBy(x => x.IdRendimientoAcademico == nuevo.IdRendimiento))
                    {

                        RendimientoAcademico nuev = new RendimientoAcademico();
                        nuev.IdRendimientoAcademico = a.IdRendimientoAcademico;
                        nuev.Descripcion = a.Descripcion;
                        nuevo.rendimiento.Add(nuev);



                    }




                    return Json(nuevo, JsonRequestBehavior.AllowGet);
                }
                catch
                {
                    return Json("Si", JsonRequestBehavior.DenyGet);

                }

    Con este lleno los datos en la vista

                                 $(".obsercl").click(function () {

            //var matri = $('#MatriAsig').val();
            var id_ = $(this).attr('id');


            //alert(id_);
               myDialogReporHC.dialog('open');


                $.ajax({
                    url: '@Url.Action("Observaciones","AdministracionGruposStaff")',

        data: {
            id: id_,

        },
        type: "get",
        cache: false,
        success: function (retorno) {

            if (retorno == "Si") {
                $('#commonMessage').html("Error");
                $('#commonMessage').delay(400).slideDown(400).delay(3000).slideUp(400);


            }
            else {
                $('#Observaciones').attr('value', retorno.Observaciones);
                $('#idinscripC').attr('value', retorno.IdInscripcion);
                var cbGrupos = $('#Rendimiento');
                cbGrupos.empty();
                //cbGrupos.appendTo(retorno.IdRendimiento);

                $.each(retorno.rendimiento, function (index, itm) {
                    cbGrupos.append(
                     $('<option/>')

                         .attr('value', itm.IdRendimientoAcademico)
                             .text(itm.Descripcion)


             );



                });



            }

        },
        error: function (retorno) {
            $('#commonMessage').html("Error");
            $('#commonMessage').delay(400).slideDown(400).delay(3000).slideUp(400);

        }                              

    Funciona bien a excepcion de que el $.each(retorno.rendimiento, function (index, itm) { no lo puedo ordernar por el campo que quiera siempre se ve el primero que recupera.

    ¿Tendran alguna solución?

    Muchas gracias

                                                                                                                                                                     
    sábado, 15 de febrero de 2014 23:34

Respuestas

  •  var valorseleccionado = retorno.IdRendimiento;
                var cbGrupos = $('#Rendimiento');
                cbGrupos.empty();

                //cbGrupos.appendTo(retorno.IdRendimiento);

                $.each(retorno.rendimiento, function (index, itm) {
                    if (itm.IdRendimientoAcademico == valorseleccionado) {
                        cbGrupos.append(
                         $('<option/>')
                             .attr('value', itm.IdRendimientoAcademico)
                                 .text(itm.Descripcion)
                                  .attr('selected', 'selected')

             );
                    }
                    else
                    {
                        cbGrupos.append(
                         $('<option/>')
                             .attr('value', itm.IdRendimientoAcademico)
                                   .text(itm.Descripcion)
                                     );

                    }
                });



            }

    La respuesta, gracias por mirarlo al menos

                                     
    • Marcado como respuesta Miguel Phinder domingo, 16 de febrero de 2014 1:44
    domingo, 16 de febrero de 2014 1:44