我有一個購物車,我通過Html
爲數量創建了一個簡單的選擇清單。我想使用Html.ActionLink
來獲取該選擇列表的值,但是如果我使用JavaScript
將無法正常工作,因爲它位於名爲product的PartialView
之內,並且頁面上有多個產品。如何在操作鏈接中傳遞選擇列表值而不使用JavaScript併爲其創建模型?
我怎樣才能得到該選擇列表的價值沒有JavaScript
?我環顧四周,但沒有發現任何有用的東西。有沒有其他方法?
PartialView
<p>@Model.Description</p>
<p id="price">@Model.Price</p>
<p class="id hidden">@Model.GadgetID</p>
<select name="Select" id="quantity">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
</select>
<p>
Html.ActionLink("Add To Cart", "AddOrder", "Home",new { qty = ?? , id = Model.GadgetID, price = Model.Price }, null)
</p>
或者,如果我使用JavaScript
我怎樣才能得到正確的細節,因爲在頁面上的多個產品。
View
其中包括PartialView
。
<div class="col-lg-10 products">
<div class="pad">
@foreach (var item in Model)
{
foreach (var gadget in item.Gadgets)
{
@Html.Partial("Gadget", gadget)
}
}
</div>
</div>
JQuery
<script type="text/javascript">
$(document).ready(function() {
$(".AddToCartBtn").click(function() {
var _qty = $(this).find("#quantity").val();
var _id = $(this).find(".id").val();
var _price = $("#price").html();
alert("qty: " + _qty + " id: " + _id + " price: " + _price);
});
});
你只是不能這樣做沒有js =) –
,我怎麼能用'JavaScript'做到這一點 – Sugafree
如果你不想使用JavaScript,那麼把一個正確生成的下拉列表放在FormMethod.Get中並提交你的'AddOrder()'方法。但無論如何,這是在改變數據,所以你應該做一個POST,而不是GET。使用鏈接不合適。 (並在局部視圖是irelevant) –