我有一個與顯示購物項目的項目模型綁定的視圖。我想要添加一個數量文本字段並將該itemID和數量提交給控制器。我正在使用AJAX表單。如何從視圖向控制器發送模型屬性值
AJAX形式:
@using (Ajax.BeginForm("AddToCart", "PizzaBasket",
new AjaxOptions
{
InsertionMode = InsertionMode.Replace,
HttpMethod = "GET",
OnFailure = "searchFailed",
LoadingElementId = "ajax-loader",
UpdateTargetId = "basketSummary",
}))
{
@Html.HiddenFor(id => id.ItemId, new { @class = "id" })
<input type="hidden" name="id" class="id")/>
<label for="quantity">Quantity</label>
<input type="text" name="quantity" size="5"/>
<input type="submit" value="Add to Cart" />
<img id="ajax-loader" src="@Url.Content("~/Content/Images/ajax-loader.gif")" style="display:none"/>
}
控制器動作:
public ActionResult AddToCart(String id, String quantity) {
/*Add to cart*/
return RedirectToAction("Index");
}
然而,id的值是沒有得到提交。需要了解如何將AJAX表單中的id值傳遞給控制器。請注意,在同一個文件@ Model.itemId工作正常。
大多數問題是,您的隱藏ID標記中有一個「)」,這會使您的HTML標記無效,並且最終結果與隱藏從未出現過的相同:) – Romias