html.dropdownlist的更改事件

问题描述 投票:37回答:6

我正在尝试触发下拉列表的onchange事件的操作方法,如何在不使用jquery onchange的情况下做到这一点。

@Html.DropDownList("Sortby", 
                   new SelectListItem[] 
                   { 
                       new SelectListItem() { Text = "Newest to Oldest", Value = "0" }, 
                       new SelectListItem() { Text = "Oldest to Newest", Value = "1" }})

谢谢

我正在尝试为dropdownlist的onchange事件触发一种操作方法,如何在不使用jquery onchange的情况下做到这一点。 @ Html.DropDownList(“ Sortby”,new SelectListItem [] ...

c# html asp.net asp.net-mvc html.dropdownlistfor
6个回答
28
投票

您可以这样做


48
投票

如果您不想要jquery,则可以使用javascript:-


21
投票
@Html.DropDownListFor(m => m.State,
              new SelectList(ViewBag.StateList, "StateId", "StateName"),
              "Select state",
              new { @class = "form-control", @onchange="FillCity()" })



function FillCity() {
    var stateId = $('#State').val();
    $.ajax({
        url: '/Employees/FillCity',
        type: "GET",
        dataType: "JSON",
        data: { State: stateId},
        success: function (cities) {                    
            $("#City").html(""); // clear before appending new list 
            $.each(cities, function (i, city) {
                $("#City").append(
                    $('<option></option>').val(city.CityId).html(city.CityName));
            });
        }
    });
  }

5
投票

如果将值传递给操作方法,则可以尝试此操作。


1
投票

尝试一下:


0
投票

如果您具有列表视图,则可以执行以下操作:

© www.soinside.com 2019 - 2024. All rights reserved.