Asp.net mvc 从MVC下拉列表中获取文本
我有一个从服务器填充的MVC下拉列表。像这样Asp.net mvc 从MVC下拉列表中获取文本,asp.net-mvc,knockout.js,Asp.net Mvc,Knockout.js,我有一个从服务器填充的MVC下拉列表。像这样 @Html.DropDownList("ddlContent", Enumerable.Empty<SelectListItem>(), "<Select Message>", new { @class = "form-control", data_bind = "value: messageTitle" }) 我只通过这种方式接收一个int值,我需要的是下拉列表中选定的文本 我还有另一个列表,我正在尝试同样的事情,看起来
@Html.DropDownList("ddlContent", Enumerable.Empty<SelectListItem>(), "<Select Message>", new { @class = "form-control", data_bind = "value: messageTitle" })
我只通过这种方式接收一个int值,我需要的是下拉列表中选定的文本
我还有另一个列表,我正在尝试同样的事情,看起来是这样的
@Html.DropDownListFor(model => model.EblastSubject, new SelectList(Model.ListEblastSubject, "SubjectID", "Subject"), "<Select Subject>", new { @class = "form-control", data_bind = "value: eblastSubject" })
但不是所选文本可观察者应拾取文本。试试这个: 控制器
var items = new [] { "one", "two", "three" };
ViewBag.MyList = new SelectList(items);
看法
谢谢,但不要掷骰子。我得到的值是所选项目的Id,我需要所选文本。诀窍在于
s不具有值
属性。如果这样做,KO将拾取文本,就像上面的示例一样,在另一个列表中,输入的是subject,然后是subject,我需要subject的值,例如value:i[1]。MessageTitle如果您想要所选文本,正如我所说的,最简单的方法是针对这些问题进行渲染:只是文本您没有显示足够的代码,我们无法重现问题。请在(a)客户端代码,(b)该代码的输入/数据是什么样子的,您是否尝试将所有代码移植到angular??
self.eblastSubject = ko.observable();
var items = new [] { "one", "two", "three" };
ViewBag.MyList = new SelectList(items);
@Html.DropDownList("MyList", null, "-- Select Message --", new { @class = "form-control", data_bind = "value: messageTitle" })