Tôi có nếu điều kiện và tôi muốn vô hiệu hóa hoặc kích hoạt nút ActionLink của tôi.MVC3 Làm thế nào để vô hiệu hóa/kích hoạt ActionLink
Tôi sẽ làm như thế nào?
@Html.ActionLink("Delete", "Delete", new { id = @Model.Id})
Cảm ơn,
Tôi có nếu điều kiện và tôi muốn vô hiệu hóa hoặc kích hoạt nút ActionLink của tôi.MVC3 Làm thế nào để vô hiệu hóa/kích hoạt ActionLink
Tôi sẽ làm như thế nào?
@Html.ActionLink("Delete", "Delete", new { id = @Model.Id})
Cảm ơn,
Nếu bạn biết ở phía máy chủ liên kết là không có sẵn sau đó chỉ cần làm một thông báo rằng hành động đó là không có sẵn:
@if(condition)
{
@Html.ActionLink("Delete", "Delete", new { id = @Model.Id})
}
else
{
<text>Action is not available</text>
}
Nếu không, bạn chỉ có thể vô hiệu hóa liên kết với
Để làm cho nó làm việc qua trình duyệt: Should the HTML Anchor Tag Honor the Disabled Attribute?
Để vô hiệu hóa một "a" tag bạn có thể làm:
@Html.ActionLink("Delete", "Delete", new { id = @Model.Id}, new { onclick = "javascript:return false;" })
Hoặc bạn có thể sử dụng JQuery:
@Html.ActionLink("Delete", "Delete", new { id = @Model.Id}, new { class = "linkdisabled" })
CSS:
.linkdisabled{
cursor:text;
}
JQuery:
$function(){
$(".linkdisabled").click(function(){
return false;
}
}
Có lẽ bạn có thể tạo giao diện người dùng riêng của bạn thuộc loại MvcHtmlString
public static MvcHtmlString MyActionLink(this HtmlHelper helper, bool isClickable, string altText, RouteValueDictionary routeValues, object htmlAttributes = null)
{
// some logic with isClickale parameter here
if(isClickable == false)
{}
return new MvcHtmlString(helper.ToHtmlString());
}
và sử dụng nó trong Xem bạn
@Html.MyActionLink(// some parameters here)
Nhưng tôi chưa bao giờ thử. Hãy thử tìm nội dung nào đó về số MvcHtmlString trên Google.
Xin chào, giải pháp tốt đẹp .. nhưng có cách nào để làm cho văn bản không nhấp có thể. Bây giờ nó xuất hiện như một liên kết nhưng nó không đi đâu cả. Vì vậy, có cách nào để thay đổi diện mạo của nó. Cảm ơn – Scorpion
Bạn có thể thêm thuộc tính kiểu hoặc sử dụng lớp css để làm điều đó: –
Cảm ơn bạn! Giải pháp tốt! –