通过ajax从dropdownlist和过滤表中获取日期

时间:2014-10-24 14:06:45

标签: javascript c# jquery asp.net ajax

伙计们对ajax有一点问题。我在视图上有2个动作

<body>
    @Html.Action("SetSearchFilter")
    @Html.Action("FillTable")
</body>

First Action是DropDownList

 @Html.LabelFor(m => m.Manager, new { @class = "control-label" })
        @Html.DropDownList("SearchingManagerId", new SelectList(Model.Managers, "UserId", "PrettyFullName",
        Model.SelectedValueManager),
        string.Empty, new { style = "width: 200px" })

第二个是由

组成的表
 public PartialViewResult FillTable(int year, int? ManagerId)
        {
            int currentUserId = (int)Session["CurrentUserId"];
            return PartialView("_QualificationTable", planService.GetQualificationViewModel(year.ToString(), currentUserId,ManagerId));
        }

我如何通过ajax过滤,从下拉列表中获取数据并将其带到表中?我想我应该像这样使用smth

  $("#DropDownListId").on("change", function () {
                    var valueForSearch = //How i can get?;
                    $.ajax({
                        url: '@Url.Action("FillQualificationTable")',
                        dataType: 'html',
                        async: false,
                        data: { year: currentYear, ManagerId: valueForSearch },
                        beforeSend: showSpinner,
                        success: function (data) {
                            $('#tableid').html(data);
                        },
                        complete: hideSpinner,
                    });

我第一次使用ajax,所以有一些问题=( DDList中的值看起来像这样

<select id="SearchingManagerId" name="SearchingManagerId" style="width: 200px"><option value=""></option>
<option value="1">user1</option>
<option value="5">user2</option>
</select>

1 个答案:

答案 0 :(得分:0)

使用jquery "this"

$("#DropDownListId").on("change", function () {
                    var valueForSearch = $(this).val();
                    $.ajax({
                        url: '@Url.Action("FillQualificationTable")',
                        dataType: 'html',
                        async: false,
                        data: { year: currentYear, ManagerId: valueForSearch },
                        beforeSend: showSpinner,
                        success: function (data) {
                            $('#tableid').html(data);
                        },
                        complete: hideSpinner,
                    });

Look example