【问题标题】:How to bind a list of selected elements to a ViewModel如何将选定元素列表绑定到 ViewModel
【发布时间】:2014-03-28 17:39:58
【问题描述】:

我想将 UI 中的选定元素列表绑定到我的 ViewModel。这是 HTML:

@Html.Label("Actors")
  <select name="actors" class="chosen-select" multiple="" 
          data-placeholder="Select actors of the Screen">
      @for(int i = 0; i < actors.Count; i ++)
      {
          <option value="@i">@actors[i].name</option>
      }
  </select

顺便说一句,我使用的是 selected.js,所以在此之后,我将在用户界面中获得完整的演员列表。客户必须选择一个或多个。

如何将所有选中的项目放入一个List并将结果发送到服务器?

【问题讨论】:

    标签: javascript asp.net-mvc-3 asp.net-mvc-4 asp.net-mvc-5 asp.net-mvc-5.1


    【解决方案1】:

    我看到了 selected.js 插件的演示,它是创建一个新的 DIV 元素而不是 SELECT 元素,因此它无法将选定状态同步回 SELECT 元素。

    但是你可以创建一个 CHANGE 事件来观察选定的状态。 参考。 http://harvesthq.github.io/chosen/#change-update-events

    例如选择选项时,将值放到隐藏的文本使用逗号分隔,并在服务器端进行处理。

    【讨论】:

    • 选择创建一个div,并且在div之上他们有SELECT元素
    • 但它不会自动将 'selected' 属性同步到 SELECT 元素。所以你需要手动保存选择的选项。
    猜你喜欢
    • 2017-02-11
    • 2023-03-31
    • 1970-01-01
    • 2018-10-19
    • 2013-09-13
    • 2011-02-28
    • 1970-01-01
    • 2014-08-06
    • 2011-11-30
    相关资源
    最近更新 更多