0
我正在研究電子商務應用程序購物車。我有一個定價頁面,顯示多個類別的產品及其價格清單。用戶可以選擇添加多個產品到購物車(活動購物車正在顯示在頁面的右側)。我正在嘗試使用Ajax/jQuery將項目添加到我的購物車。我有一個表單,每個產品都包含多個隱藏字段,我想傳遞給我的函數和控制器。你可以看到所有這些在下面的代碼:
<% foreach (var _category in Model) { %>
<% foreach (var _product in _category.Products)
{ %>
<tr>
<td align="left" valign="top"><% = _product.Description %> (<% = _product.Code %>)</td>
<td valign="top" align="center">$<% = _product.TotalPrice %></td>
<td align="left">
<form id="frmProduct_<%=_product.Code%>">
<input type="button" onclick="JavaScript:addProductToBasket(this.form);" value="+ Add to cart" />
<input type="text" id="hProductCode" value="<% = _product.Code %>" />
<input type="text" id="Text1" value="<% = _product.TotalPrice %>" />
<!--Other hidden fields for passing data -->
</form>
</td>
</tr>
<% } %>
<% } %>
因爲我有網頁多種形式,我有很難訪問我的javascript函數內一種特殊形式。什麼是處理這種情況的最佳方式?
<script type="text/javascript">
function addProductToBasket(_form) {
alert('Hi');
var str = $('#_form').serialize();
alert(str);
}
</script>
我正在使用ASP.NET MVC 2.0,目前無法移動到MVC 3.0。
我跟着你的建議,並使用Html.BeginForm聲明打造循環形式,它能夠發佈,我嘗試以ajaxify形式BUT警報($(this).serialize());沒有返回任何內容...我沒有收到任何錯誤,但$(this).serialize()返回一個空值。我可能會錯過什麼?使用(Html.BeginForm(「」,「」,FormMethod.Post,new {@class =「addProductToCartForm」})){%> Alex 2010-12-08 22:12:20