【问题标题】:Dynamically add items to list in view动态地将项目添加到视图中的列表
【发布时间】:2014-09-06 01:54:10
【问题描述】:

是否可以在视图中将多个项目添加到列表中?假设我有以下数据合同:

public class Question
{
    public int QuestionID { get; set; }
    public string Name { get; set; }
    public virtual List<AdditionalAnswer> AdditionalAnswers { get; set; }
}

public class AdditionalAnswer
{
    public int AdditionalAnswerID { get; set; }
    public AnswerTypeAnswerTypeEnum  AnswerType { get; set; }
}

如果我正在创建一个新的Question,我将如何添加多个AdditionalAnswers同时仍在Edit 视图上而不进行任何回发?

【问题讨论】:

  • 您将需要使用 javascript 来动态添加新元素并确保它们是属性命名的(带有索引器)以允许随后被回发。查看this answer 寻找可能的解决方案

标签: asp.net-mvc dynamic


【解决方案1】:

默认模型绑定应该可以做到。诀窍是动态添加看起来像这样的输入标签:

<input name="AdditionalAnswer[0].AdditionalAnswerID"/>
<input name="AdditionalAnswer[0].AnswerType"/>
<input name="AdditionalAnswer[1].AdditionalAnswerID"/>
<input name="AdditionalAnswer[1].AnswerType"/>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-07-12
    相关资源
    最近更新 更多