tengo un carrito de compras, donde se cumple lo siguiente:formas anidadas en ASP.NET MVC
- Hay un botón "Eliminar" para cada producto en el carrito de la compra
- Hay una cantidad de texto editable caja para cada producto en el carrito de la compra
- Hay un botón "Actualizar" para todo el carrito de la compra
la idea es que el usuario puede modificar las cantidades de un producto en el carro y haga clic en "Actualizar" a cometer los cambios
¿Cómo programarías el botón "Actualizar" usando MVC? ¿Envolvería todo el carrito de la compra en un formulario que se registre y de alguna manera ubique los valores de cantidad en FormCollection? El problema con este enfoque es que, dado que los botones "Eliminar" cada uno vive en sus propios formularios, ahora estaría haciendo formularios anidados en la página y ni siquiera estoy seguro de que esté permitido.
<% using (Html.BeginForm("Index", "Cart")) { %>
<table>
<tr>
<th> </th>
</tr>
<% foreach (var item in Model) { %>
<tr>
<td>
<input name="qty" type="text" value="<%=item.Quantity%>" maxlength="2" />
<% using (Html.BeginForm("RemoveOrderItem", "Cart")) { %>
<%= Html.Hidden("ShoppingCartItemID", item.ShoppingCartItemID) %>
<input name="add" type="submit" value="Remove" />
<%} %>
</td>
</tr>
<% } %>
</table>
<input name="update" type="submit" value="Update" />
<%} %>
¿Cómo incorporaría la entrada inferior en este formulario?
Si eso no está claro ... No anidado, uno al lado del otro. –
¿Puedes dar un ejemplo? Solo tengo un botón Actualizar en la parte inferior de la página y los cuadros de texto que contienen las cantidades están en el nivel del artículo. ¿Cómo se forma esto correctamente? – Thomas
Enlazando con lo que me solucionó este problema: http://stackoverflow.com/questions/3102133/internet-explorer-nested-form-post/3102441#3102441 – KristianB