Ma question est similaire à here d'Engram, mais ma question va un peu plus loin. La façon dont je l'intention de travailler est que j'ai une zone de texte demandant combien d'entrées un utilisateur va faire. Après avoir saisi le nombre, j'ai besoin de créer autant de boîtes de texte pour permettre les entrées (et ensuite répéter le même processus avec ces boîtes de texte, mais bébé commence d'abord ...) J'ai essayé de récupérer les clés sur le poteau, mais ça revient la boîte de texte initiale demandant le nombre d'entrées. J'essaie toujours d'avoir une compréhension de MVC et les tutoriels/vidéos jusqu'ici ne plongent pas encore profondément dedans. Là encore, je sais que c'est probablement quelque chose que je pourrais gérer avec JQuery, mais je serais toujours coincé dans la même situation.Remplir dynamiquement un formulaire en fonction de l'entrée de l'utilisateur dans ASP.Net MVC
C'est le contrôleur que je utilise:
[AcceptVerbsAttribute("POST")]
public ActionResult Create(int tbxNumberOfExercises)
{
ViewData["number"] = tbxNumberOfExercises;
foreach (var key in Request.Form.Keys)
{
string keyString = key.ToString();
if (keyString.StartsWith("tbox_exercise", StringComparison.OrdinalIgnoreCase))
{
string recNum = keyString.Substring(13, keyString.Length - 13);
string approvedKey = Request.Form["tbox_exercise" + recNum];
int number;
int.TryParse(approvedKey, out number);
}
}
return View("Create");
}
Et ceci est mon ASPX:
<form action="/CreateWorkout/Create" method="post">
Number of Exercises:
<%= Html.TextBox("tbxNumberOfExercises") %>
<br />
<br />
<input type="submit" value="Set Exercise Number" />
</form>
<% if (ViewData["number"] != null)%>
There are this many:<%=Html.Encode(ViewData["number"])%>
<br />
and this line should show up
<% if (ViewData["number"] != null)
{
int max = (int)ViewData["number"];
for (int i = 0; i < max; i++)
{%>
<br />
<br />
<%= Html.TextBox("tbox_exercise" + i) %>
<% }
} %>
<% if (ViewData["s"] != null) %>
<%=Html.Encode(ViewData["s"]) %>
Y at-il quelque chose que je donne sur, ne pas comprendre, ou devrais-je quitter alors que je suis parce que j'ai l'impression de ne jamais l'avoir?
Merci d'avance pour toute aide - j'essaie juste d'apprendre le plus possible.