我正在使用MVC2,但我无法获得texbox的价值。
我的观看代码是:
<% for (int i=0;i<Model.Count();i++) { %>
<%:Html.HiddenFor(m => m[i].Quantity)%>
<%:Html.TextBoxFor(m => m[i].Quantity, new { @class = "quantity", @maxlength = "3", @size = "2" })%>
<%}%>
<input type="submit" value="Actualizar" name="update" class="btnUpdateCart" />
点击更新按钮会触发此功能:
[BrowserCache(PreventBrowserCaching = true)]
public void UpdateCart(CartItem[] items)
{
Some code
}
问题是此时我的CartItem []没有设置数量。我是这个技术新手,我确定我错过了一些非常愚蠢的东西......
有人可以帮忙吗?
答案 0 :(得分:0)
确定 所以你需要看看这个(总是让我摆脱困境
public ActionResult SomeActionMethod(FormCollection formCollection)
FormCollection - &gt;将返回通过请求传递给控制器的任何字段的所有表单内容的集合,因此您可以将其挂起并查看传递的内容。
仍然没有回答你的问题让我们看看
//这一行会呈现带有某种值的隐藏字段(这是填写的吗?)
<%:Html.HiddenFor(m => m[i].Quantity)%>
//为什么要为同一个字段渲染文本框?这将取隐藏字段中设置的值
<%:Html.TextBoxFor(m => m[i].Quantity, new { @class = "quantity", @maxlength = "3", @size = "2" })%>
所以我的答案是移除隐藏的字段,它应该工作......