ASP.NET MVC - после добавления HTML с помощью Jquery значение DropDownList становится неопределенным - PullRequest
0 голосов
/ 26 апреля 2019

У меня есть два выпадающих списка, и когда я изменяю значение первого с обновлением значения второго со следующим кодом:

 function FillBooks(val) {
            $("#ddl_dep").attr("class", "form-group");
            $("#Help1").css("visibility", "hidden");
            var CategoryId = val;
            //console.log(CategoryId);
            console.log(CategoryId)
            $("#DDL_TIPO").empty();
            $.ajax({
                url: '@Url.Action("UpdateTipo", "Tickets")',
                type: "POST",
                dataType: "JSON",
                data: { value: CategoryId },
                success: function (data) {
                    var markup = "<option value='0'>Selecione um Tipo</option>";
                    for (var x = 0; x < data.length; x++) {
                        markup += "<option value=" + data[x].value + ">" + data[x].Text + "</option>";
                    }
                    $("#DDL_TIPO").html(markup).show();

                }
            });

        }

P.S. - Данные поступают от контроллера, который не имеет отношения к примеру, который я показываю.

После этого, когда я пытаюсь получить значение Второго выпадающего списка, оно становится неопределенным.

Я тестировал перед этим jquery-код, и он дает мне значение выпадающего списка, он просто не дает, когда я заставляю эту функцию работать с ним.

1 Ответ

0 голосов
/ 29 апреля 2019

Попробуйте это:

<script>  
        function FillBooks(val)  
    {  

                $("#ddl_dep").attr("class", "form-group");
                $("#Help1").css("visibility", "hidden");
                var CategoryId = val;
                //console.log(CategoryId);
                console.log(CategoryId) 
            $.ajax  
            ({  
                url: '@Url.Action("UpdateTipo", "Tickets")',
                type: 'POST',  
                datatype: 'application/json',  
                contentType: 'application/json',  
                data: { value: CategoryId },  
                success: function(result)  
              {  
                    $("#DDL_TIPO").html("");  
                    $.each($.parseJSON(result), function(i, tipo)  
                    {  
                        $("#DDL_TIPO").append($('<option</option>').val(tipo.Value).html(tipo.Text))  
                    })  

                },  
                error: function()  
                {  
                    alert("Whooaaa! Something went wrong..")  
                },  
            });  
        }  
    </script>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...