Функция «на изменение» JavaScript не работает в asp.net MVC - PullRequest
0 голосов
/ 06 ноября 2019

Я попытался просмотреть список продуктов на основе категорий с помощью js ASP.NET MVC 5. Я новичок в этом, он просто не будет действовать в поле выбора. это мой код:

Мой блок выбора:

<select class="SelectCategory" name="SelectCategory">
<option value="0">All</option>
@foreach (var item in ViewBag.categories)
{
    if (ViewBag.SelectedCat == item.Value)
    {
        <option selected="selected" value="@item.Value">@item.Text</option>
    }
    else
    {
        <option value="@item.Value">@item.Text</option>
    }
}

Js:

@section Scripts {
<script src="https://code.jquery.com/ui/1.12.0/jquery-ui.min.js"></script>
<script>

    $(function () {

        $("#SelectCategory").on("change",
            function() {
                var url = $(this).val();
                if (url) {
                    window.location = "/admin/shop/Products?catId=" + url;
                }

                return false;
            });
});

</script>
}

Ответы [ 2 ]

0 голосов
/ 06 ноября 2019

$("#SelectCategory") это будет искать дом с идентификатором, но вы использовали класс и имя. Вы можете добавить идентификатор атрибута, чтобы выбрать

<select id='SelectCategory' class="SelectCategory" name="SelectCategory">
0 голосов
/ 06 ноября 2019

$("#SelectCategory").on("change",

Это неправильно, поскольку ваш элемент не содержит элемент ID, который указывает символ # в вашем селекторе jQuery.

Если вы хотите настроить таргетингэлементы по имени атрибута, вы должны использовать следующее:

$("[name='SelectCategory']").on("change",

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...