Для цикла по списку моделей в скрипте MVC и доступ к Jquery внутри цикла
Я хочу получить доступ к jquery внутри forloop в скрипте MVC. Вот сценарий:
У меня есть свойство Model типа list. и хотите перебрать цикл и добавить содержимое в 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>
это не работает. Есть ли способ, как я могу заполнить раскрывающийся список динамически, как это, используя другое свойство Model в сценарии mvc?
1 ответ
Похоже, ваш селектор #contactPhone select
не работает, потому что select
контроль также имеет contactPhone
Я бы. Проверить с .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" })