相同模型在页面中调用多个作为mvc3 aspx中的用户控件

时间:2013-01-25 11:18:56

标签: asp.net-mvc-3 asp.net-mvc-3-areas

我已经成功创建了地址的用户控件,以便我们可以植入学生添加视图页面,员工添加视图页面。

我们可以成功地采用页面的Actionresult

 [HttpPost]
    public ActionResult Add(StudentModel StudentModel , AddressModel AddressModel)
    {

//执行代码     }

但我坚持的情况是,对于学生我们必须输入通讯地址,家长办公室地址等....为此,我们必须在学生的添加视图页面中多次调用地址模型

       <%

           Html.RenderPartial("Addaddress", Model.CommunicationAddress);%>
         <%

      Html.RenderPartial("Addaddress", Model.ParentAddress);%>

在这里我们如何填写国家/地区的下拉列表,然后根据国家/地区 - 然后根据州 - 城市。

当我尝试时,只有国家的下拉列表填写这两种情况,并且因为通信地址状态是根据国家填写。但它没有发生在父母的地址上。

1.怎么做? 2.之后,在httppost中,我们如何检索这两个地址?

提前致谢。

请帮忙。

1 个答案:

答案 0 :(得分:1)

在MVC中,在同一页面中多次调用的用户控件具有相同的控件ID。这是MVC See this link

中的默认错误

要完成此操作,您必须添加带有Id的div并在模型中添加divid并为每个新实例分配divid的新值,然后在填充Json时,如果您使用的是必须为例如:$('#<%=Model.divid %> #CountryId').change调用该字段,以获得相应的值。

对于格式化模型值,只有我发现的方法是使用Json从每个div中收集值,因为在actionresult中最终只能获得一个模型。

我希望你得到你需要的东西。