javascript - 使用 AJAX/jQuery 将 SelectList 获取到 MVC View

标签 javascript jquery asp.net-mvc ajax drop-down-menu

我有一个 C# MVC 应用程序,它根据所选日期填充下拉列表。选择日期后,我将通过 AJAX/jQuery 将其发送到操作。该操作获取该日期要返回的项目列表。

这就是我的问题所在。我之前已经完成了,我从 Action 中渲染了一个局部 View 并将其作为模型传递给 SelectList。但是,我真的只是想在原始 View 中内联执行它,所以我希望有一些方法可以返回 SelectList 并从那里执行一些神奇的 Javascript/JQuery 将其放入下拉列表中。

以前有人做过吗?如果是这样,我在调用 load() 返回 SelectList 后在客户端做什么?

我以前做过类似的事情,当时我只是返回一个字符串或其他值以呈现为纯文本:

$("#returnTripRow").load("/Trip.aspx/GetTripsForGivenDate?date=" + escape(selection));

但我不确定如何拦截数据并将其变形为 Html.DropDown() 调用或等效调用。

有什么想法吗?

谢谢,

克里斯

最佳答案

假设您有一个将为下拉列表提供数据的 Controller 操作:

public ActionResult Cars()
{
    return Json(new[] {
        new { id = "bmw", name = "BMW" },
        new { id = "mer", name = "Mercedes" },
        new { id = "aud", name = "Audi" }
    }, JsonRequestBehavior.AllowGet);
}

在你看来:

$.getJSON('/home/cars', { }, function(cars) {
    var list = $('select#cars');
    list.find('option').remove();
    $(cars).each(function(index, car) {
        list.append('<option value="' + car.id + '">' + car.name + '</option>');
    });
});

关于javascript - 使用 AJAX/jQuery 将 SelectList 获取到 MVC View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2429780/

相关文章:

.net - 预选多选列表框中的项目 (MVC3 Razor)

javascript - Angular ag-grid : "Could not find component class XXX, did you forget to configure this component" 出错

jquery - Drupal 行为

php - 如何将 javascript 变量的值赋给 php 变量

javascript - 如何使用 .removeClass() 禁用 jquery 功能

asp.net-mvc - 无法将子网格绑定(bind)到剑道层次结构 UI 网格中的第二行

javascript - 从 MVC 加载数据 Jtable 时出错?

javascript - 选择框属性更改时未触发 Webkit Mutation Observer 回调

javascript - jQuery ContextMenu 事件在 IOS 8.2 中不起作用

c# - 如何将这一行转换成 vb.net