好的,所以我試圖從 asp-route-qt 中的輸入 Quantite 傳遞值,但我似乎無法理解它。這個asp-route-idBillet作業得很好,但另一個不是。如果有人可以通過示例幫助我解決此問題,將不勝感激。提前致謝
編輯:我應該指定我用于視圖的模型不能將 Quantite 作為屬性。該模型包含四種型別的票證。每張票都包含一個標題、一個描述、一個價格和一個 ID。基本上這意味著我不能asp-for為輸入 Quantite 使用標簽。
這是我的看法:
<form method="POST">
<div class="row">
@foreach(var billet in Model)
{
<br>
<div class="col-sm-6">
<div class="card">
<div class="card-body">
<h5 class="card-title" asp-for="Titre">@billet.Titre</h5>
<p class="card-text" asp-for="Descript">@billet.Descript</p>
<label for="Quantite">Quantité:</label>
<input type="number" name="Quantite" id="Quantite">
<a class="btn btn-secondary" asp-controller="Billet" asp-action="AjouterBillet" asp-route-idBillet="@billet.Id" asp-route-qt>Ajouter au panier</a>
</div>
</div>
</div>
<br>
}
</div>
<br>
<input type="submit" value="Aller au panier" class="btn btn-primary">
</form>
這是我的控制器動作
private readonly ZooDbContext _zooDbContext;
private readonly Panier _panier;
public BilletController(ZooDbContext zooDbContext, Panier panier)
{
_zooDbContext = zooDbContext;
_panier = panier;
}
public IActionResult AjouterBillet(int idBillet, int qt)
{
Billet billet = _zooDbContext.Billet.Find(idBillet);
_panier.Ajouter(billet, qt);
return RedirectToAction("Liste");
}
uj5u.com熱心網友回復:
這是我發現的有效方法。
這是視圖:
<form method="post">
<div class="row">
@foreach(var billet in Model)
{
<br>
<div class="col-sm-6">
<div class="card">
<div class="card-body">
<h5 class="card-title" asp-for="Titre">@billet.Titre</h5>
<p class="card-text" asp-for="Descript">@billet.Descript</p>
@using (Html.BeginForm("AjouterBillet", "Billet"))
{
<label for="Quantite">Quantité:</label>
<input type="number" name="Quantite" id="Quantite">
<input value="Ajouter au panier" type="submit" class="btn btn-secondary" asp-controller="Billet" asp-action="AjouterBillet"
asp-route-idBillet="@billet.Id">
}
</div>
</div>
</div>
<br>
}
</div>
<br>
<a class="btn btn-primary" asp-controller="Panier" asp-action="AfficherPanier">Aller au panier</a>
</form>
這是動作:
public class BilletController : Controller
{
private readonly ZooDbContext _zooDbContext;
private readonly Panier _panier;
public BilletController(ZooDbContext zooDbContext, Panier panier)
{
_zooDbContext = zooDbContext;
_panier = panier;
}
[HttpPost]
public IActionResult AjouterBillet(int idBillet, int Quantite)
{
Billet billet = _zooDbContext.Billet.Find(idBillet);
_panier.Ajouter(billet, Quantite);
return RedirectToAction("Liste");
}
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/475303.html
標籤:网 asp.net-mvc html-输入 asp.net-core-tag-helpers
上一篇:如何從api回傳多個值到HttpClientPost
下一篇:jQuery模式彈出不顯示元素值
