我想在MVC脚本中访问forloop中的jquery。这是场景: -
我有类型列表的模型属性。并希望迭代循环并在同一视图中将内容添加到Dropdown。
@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属性动态填充下拉列表?
答案 0 :(得分:0)
您的选择器#contactPhone select
看起来不起作用,因为select
控件也具有contactPhone
ID。查看.appendTo('#contactPhone')
。
顺便说一句,你可以使用帮助器用你的模型填充下拉列表:
@{
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" })