Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Разработка под ASP.NET > Передача данных из формы в контрол


Автор: Deman0590 5.9.2014, 15:53
Есть форма с заранее не известным количеством полей типа
Код

@using (Html.BeginForm())
{
     for(int i=0; i<=count; i++)
     {
          @Html.TextBox("Name"+i)
          @Html.TextBox("Price"+i)
     }
}


Как все это добро передать в контроллер ???

Автор: jonie 5.9.2014, 21:27
ну соберите джаваскриптом в массив, а на стороне котроллера принимайте Dictionary<string, string>:
Код

@using (Html.BeginForm())
{
     for(int i=0; i<=count; i++)
     {
          @Html.TextBox("Name"+i)
          @Html.TextBox("Price"+i)
     }
}

<script>
var data = {};
$("input").each(function (index, item) {
 data["myDict["+index+"].Key"] = $(item).attr('name');
 data["myDict["+index+"].Value"] = $(item).val();
});

$.ajax({
 type: "POST",
 data: data,
 url: "/Home/MySuperController"
});
 
</script>


Пишу прямо тут, наверняка с ошибками, но суть думаю должна быть понятна...
PS: jquery используется.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)