none
Consulta con dos dropdownlist RRS feed

  • Pregunta

  • Quiero hacer una consulta a base de datos por medio de dos DropDownList, los dos dropDownList, ya estan cargados, pero necesito que al momento de que se seleccionen los dos DropDownList me arroje el resultado de la consulta con los valores obtenidos en dichos dropDown, tengo pensarlo hacerlo con AJAX, pero aun no encuentro o estructuro bien la manera de hacerlo, es  una aplicacion web MVC en .net

    Estos son los dos DropDownList, cada uno ya viene cargado con la información necesaria desde la base de datos.

            <div class="form-group">
                @Html.LabelFor(model => model.oficina, htmlAttributes: new { @class = "control-label col-md-2" })
                <div class="col-md-10">
                    @Html.DropDownListFor(model => model.oficina,
                    WebApplication3.Controllers.TitularController.estadoss(),
                    "Selecciona una Oficina",
                        new { @class = "form-control" })
                    @Html.ValidationMessageFor(model => model.oficina, "", new { @class = "text-danger" })
                </div>
            </div>
    
            <div class="form-group">
                @Html.LabelFor(model => model.tp_vehiculo, htmlAttributes: new { @class = "control-label col-md-2" })
                <div class="col-md-10">
                    @Html.DropDownListFor(model => model.tp_vehiculo,
                    WebApplication3.Controllers.vehiculoController.tipo_vehi(),
                    "Selecciona un Tipo de Vehículo",
                        new { @class = "form-control" })
                    @Html.ValidationMessageFor(model => model.tp_vehiculo, "", new { @class = "text-danger" })
                </div>
            </div>
    Y en este TextBox es donde quiero que me arroje el resultado, una vez que ya se realizo la consulta a la base de datos.
      <div class="form-group">
                @Html.LabelFor(model => model.patron, "Patrón", htmlAttributes: new { @class = "control-label col-md-2" })
                <div class="col-md-10">
                    @Html.EditorFor(model => model.patron, new { htmlAttributes = new { @class = "form-control", style = "background-color:transparent; border:none;" } })
                    @Html.ValidationMessageFor(model => model.patron, "", new { @class = "text-danger" })
                </div>
            </div>


    miércoles, 21 de marzo de 2018 17:37

Todas las respuestas

  • Puede hacerse con AJAX, correcto.

    $(function() {
        var ddowns = $('select[name="oficina"], select[name="tp_vehiculo"]');
        ddowns.change(function() {
            //No hacer la llamada AJAX a menos que ambos DD's tengan una selección.
            bool seleccionCompleta = true;
            ddowns.each(function() {
                var val = $(this).val();
                if (!val) {
                    seleccionCompleta = false;
                    return false;
                }
            });
            if (!seleccionCompleta) {
                alert('Primero debe seleccionar algo en ambas listas.');
                return;
            }
            //Si llegamos aquí, puede hacerse la llamada AJAX y asignar el valor obtenido al textbox via $('#idTB').val(<valor>);
        });
    });


    Jose R. MCP
    Code Samples

    viernes, 30 de marzo de 2018 7:18