【问题标题】:asp.net mvc 2. Adding to a viewModel's collection(client side)asp.net mvc 2. 添加到视图模型的集合(客户端)
【发布时间】:2011-06-13 11:30:53
【问题描述】:

我知道您可以像这样在客户端绑定到 viewModel 的集合:

    <%for(int i = 0; i < Model.contacts.Count; i ++){%>
        First Name: <%: Html.TextBoxFor(model => model.contacts[i].firstName) %>
        Last Name: <%: Html.TextBoxFor(model => model.contacts[i].lastName) %>
    <%}%>

...这将允许用户更改与此集合关联的名称信息,并且当表单发布到接收操作时,viewModel 将具有相应的更改。
鉴于我可以从客户端编辑 viewModel 的集合,有没有一种方法可以从客户端添加到 viewModel 的集合中。例如,将新联系人添加到 viewModel 的联系人列表中。我想在我的页面中放置一个简单的“添加联系人”按钮,该按钮将允许用户将联系人添加到此列表中,而无需来回访问服务器。我是否正在尝试做一些不可能的事情。我希望这是有道理的。 谢谢。

【问题讨论】:

    标签: asp.net-mvc-2 data-binding dynamic viewmodel


    【解决方案1】:

    您可以查看来自 Steve Sanderson 的 following blog post,它公开了一种很好的方法来实现您正在寻找的东西。另外,我建议您使用编辑器模板,而不是编写您在问题中显示的代码,然后将其替换为:

    <%= Html.EditorFor(x => x.contacts) %>
    

    【讨论】:

    • 达林。谢谢!,太棒了!为我节省了大量时间。返回的部分也自动添加到模型的集合中,这很酷。
    • 那不是真正的客户端
    猜你喜欢
    • 2016-01-29
    • 1970-01-01
    • 1970-01-01
    • 2011-02-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多