如果在for循环中,DropDownListFor不会选择值?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (23)

view

<%= Html.DropDownListFor( x => x.Countries[ i ], Model.CountryList )%>

controller

public int[ ] Countries { get; set; }

public List<SelectListItem> CountryList { get; set; }

当表单被发布时没有问题,下拉列表被填充并且用户选择的值被张贴。但是,当我尝试将已赋值的表单加载到国家[]时,它没有被选中。

提问于
用户回答回答于

controller:

public class FruitList 
{        
    public int? selectedFruit{ get; set; }
    public List<SelectListItem> fruits
    {
        get
        {
            fruitEntities F = new fruitEntities();
            List<SelectListItem> list = (from o in F.Options
                                         select new SelectListItem
                                         {
                                             Value = o.fruitID,
                                             Text = o.fruit,                                                 
                                             Selected = o.fruitID == selectedFruit
                                         }).ToList();
            return list;
        }
    }
}

public class ViewModel 
{              
    public List<FruitList> collectionOfFruitLists { get; set; }        
}

view

<table>                        
   <% for (int i=0; i < Model.collectionOfFruitLists.Count; i++ )
        { %>
        <tr>                            
            <td><%: Html.DropDownList("fruitSelectList", collectionOfFruitLists[i].fruits, "Please select...") %></td>                
        </tr>
        <%} %>
 </table>
用户回答回答于

不确定这是否是mv4的新增功能,或者是否存在于先前的版本中。但DropDownListFor包含SelectList构造函数的附加参数。

SelectList(IEnumerable, String, String, Object)

例如:

Html.DropDownListFor( x => x.Countries[ i ], New SelectList(Model.CountryList,"ID","Description",Model.Countries[i]))

所属标签

可能回答问题的人

  • 找虫虫

    0 粉丝0 提问6 回答
  • 爸爸

    腾讯 · 客户端安全 (已认证)

    4 粉丝4 提问5 回答
  • uncle_light

    5 粉丝518 提问5 回答
  • 优惠活动秘书

    0 粉丝2 提问4 回答

扫码关注云+社区

领取腾讯云代金券