Norbert F.D. Ответов: 2

Asp.net сердечник в MVC и AJAX


Я хочу поставить partialview при изменении значения выпадающего списка. С моим кодом это работает, но когда я хочу отправить данные с помощью метода post, у меня всегда есть нулевые значения. Я видел много разных способов сделать это, но никто не работает для меня.

Что я уже пробовал:

My view ajax code:

<pre>@section scripts {
        <script type="text/javascript">

            $("#ProjecteId").on("change", function () {
                var request = JSON.stringify({
                    'ProjecteId': $('#ProjecteId').val()
                });
                $.ajax({
                    type: 'Post',
                    url: '/Consultas/MostrarTipusPersona',
                    dataType: 'json',
                    contentType: 'application/json',
                    data: request,
                    success: function (data) {

                        console.log('sample', data);
                    },
                    error: function () {
                    }
                });
            });
        </script>
    }

Мой контроллер:

[HttpPost]
    public IActionResult MostrarTipusPersona([FromBody]string ProjecteId)
    {
        string i = ProjecteId;
        return PartialView("_Ciutada", new Ciutada());
    }

Kornfeld Eliyahu Peter

Вы отладили свой JS? Что возвращает $('#ProjecteId').val ()?

2 Ответов

Рейтинг:
1

Zahid Mughal

Ваша переменная 'request', имеющая нулевое значение файла, пойманного в контроллере из ajax-запроса, вы можете проверить его с помощью точки останова. Сделайте это так, как сделано ниже.

<script type="text/javascript">
 
                $.ajax({
                    type: 'Post',
                    url: '/Consultas/MostrarTipusPersona',
                    dataType: 'json',
                    contentType: 'application/json',
                    data: {ProjecteId: $('#ProjecteId').val()},
                    success: function (data) {
 
                        console.log('sample', data);
                    },
                    error: function () {
                    }
                });
            });
        </script>


Norbert F.D.

У меня есть нулевые значения в контроллере с вашим решением :(

Большое спасибо за то, что вы пытаетесь мне помочь.

Рейтинг:
0

Norbert F.D.

I've the solution, just put contetType: 'application/x-www-form-urlencoded'.

Thanks for your help!