如何通过单击按钮触发Html.BeginForm?

时间:2014-06-10 12:18:58

标签: asp.net asp.net-mvc

这是我的Html.BeginForm代码。我想将2个值传递给Action CheckOutProduct 如何通过单击按钮触发Html.BeginForm

@Html.BeginForm("CheckOutProduct", "CheckOut")
{
    <input type="hidden" id="productCodeForCheckout" value="" />
    <input type="hidden" id="productQtyForCheckout" value="0" />
}

<button class="btn" id="checkout"><span>add to cart</span></button>

3 个答案:

答案 0 :(得分:3)

只需在表单中放置提交按钮

即可
@Html.BeginForm("CheckOutProduct", "CheckOut")
{
    <input type="hidden" id="productCodeForCheckout" value="" />
    <input type="hidden" id="productQtyForCheckout" value="0" />

    <input type="submit" class="btn" id="checkout" title="Add to Cart" />
}

如果您希望坚持button而不是input,只需将类型设置为submit

<button type="submit" class="btn" id="checkout">...</button>

答案 1 :(得分:2)

您应该在表单

中添加submit按钮
@Html.BeginForm("CheckOutProduct", "CheckOut")
{
 <input type="hidden" id="productCodeForCheckout" value="" />
 <input type="hidden" id="productQtyForCheckout" value="0" />
 <input type="submit">Add to cart</button>
}

答案 2 :(得分:0)

您还可以添加FormMethod.Post,一种用于处理表单的HTTP方法,可以采用GET或POST的形式,在您的情况下是POST方法。这将确保您的控制器中的方法将在Post:

之后触发
@Html.BeginForm("CheckOutProduct", "CheckOut", FormMethod.Post)
{
  <input type="hidden" id="productCodeForCheckout" value="" />
  <input type="hidden" id="productQtyForCheckout" value="0" />

  <input type="submit" class="btn" id="checkout" title="Add to Cart" />
}