0

我想在 MVC 脚本的 forloop 中访问 jquery。这是场景: -

我有列表类型的模型属性。并希望遍历循环并将内容添加到同一视图中的下拉菜单。

    @Html.EditorFor(model => model.worklist)
    @Html.DropDownListFor(model => model.PhoneNumber, Enumerable.Empty<SelectListItem>(), new { id = "contactPhone" })

<script type="text/javascript">
  $(document).ready(function () {

@for(var i=0; i < Model.worklist.Count(); i++)
{
   if(Model.worklist[i].PhoneID == 1)
   {
     @:$('<option />').val(Model.worklist[i].PhoneNumber).text(Model.worklist[i].PhoneNumber).appendTo('#contactPhone select');
   }
}

  });
</script>

它不工作。有什么方法可以像这样使用 mvc 脚本中的其他 Model 属性动态填充下拉列表?

4

1 回答 1

0

看起来您的选择器#contactPhone select不起作用,因为select控件也有contactPhoneid。检查与.appendTo('#contactPhone')

顺便说一句,您可以使用 helper 使用您的模型填充下拉列表:

@{
    new list = Model.worklist.Select(x => new SelectListItem {
       Text = x.PhoneNumber.ToString(), 
       Value = x.PhoneNumber.ToString()
    }).ToList();
}

@Html.DropDownListFor(model => model.PhoneNumber, list, new { id = "contactPhone" })
于 2013-07-22T18:26:18.420 回答