我在视图中的href下有一个submit元素。我想激活它并在会话变量的此视图的控制器的函数index()下停用。有可能吗?
<a href="/Checkout/AddressAndPayment" input type="submit" data-id="1" role="button" >
BuyItem
</a>
答案 0 :(得分:0)
因此,禁用链接的唯一方法是在UI中。有很多方法可以做到这一点......
我想MVC hack会在ViewBag
中存储一些东西。在控制器中,您可以设置任何变量,例如:
ViewBag.CanIClickMyLink = true;
然后在视图中你可以利用它:
@Html.ActionLink("Buy Item", "AddressAndPayment", "Checkout", null, new { @enabled = ViewBag.CanIClickMyLink })
或
<a href="@(ViewBag.Enabled ? "https://www.google.co.uk" : "#")">
BuyItem
</a>
或者,您可以使用Session
来访问用户会话中的属性,这可能会有更多的问题。我希望这有助于你开始,我总能扩展我的答案。
我个人会在MVC模型属性中包含任何重要的变量,例如用户授权。它总是感觉更干净,更健壮。与动态ViewBag不同,它是一个强类型类。使用ViewBag时,很容易出现错误。