Menambahkan Kelas Aktif pada Html.ActionLink
Dalam ASP.NET MVC, adalah perkara biasa untuk menetapkan kelas "aktif" pada elemen navigasi untuk menunjukkan halaman aktif semasa. Walau bagaimanapun, menambah kelas terus ke tag mungkin bukan pendekatan yang diingini.
Pertimbangan Bootstrap
Untuk Bootstrap, kelas aktif biasanya digunakan pada <li> elemen dan bukannya tag. Oleh itu, anda harus mengubah suai kod anda supaya menyerupai ini:
<ul>
Penugasan Kelas Dinamik
Untuk mengautomasikan proses menetapkan kelas aktif berdasarkan halaman semasa, anda boleh menggunakan pendekatan berikut:
<ul>
Dengan menggunakan Harta ViewContext.RouteData.Values, anda boleh menentukan tindakan semasa dan pengawal secara automatik. Operator ternary membenarkan anda menambah kelas aktif secara bersyarat berdasarkan tindakan yang dilakukan.
HtmlHelper Extension
Untuk penyelesaian yang lebih bersih dan elegan, anda boleh mencipta Kaedah sambungan HtmlHelper:
public static string IsSelected(this HtmlHelper html, string controllers = "", string actions = "", string cssClass = "selected") { // Get the current action and controller string currentAction = html.ViewContext.RouteData.Values["action"].ToString(); string currentController = html.ViewContext.RouteData.Values["controller"].ToString(); // Create arrays of accepted actions and controllers string[] acceptedActions = actions.Trim().Split(',').Distinct().ToArray(); string[] acceptedControllers = controllers.Trim().Split(',').Distinct().ToArray(); // Check if the current action and controller match any of the accepted values return acceptedActions.Contains(currentAction) && acceptedControllers.Contains(currentController) ? cssClass : string.Empty; }
Kaedah sambungan ini membolehkan anda menetapkan kelas aktif dengan mudah menggunakan yang berikut sintaks:
<li>
Atas ialah kandungan terperinci Bagaimana untuk Menambah Kelas 'Aktif' dengan Cekap pada Pautan Navigasi ASP.NET MVC?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!