Lanjutkan dengan artikel sebelumnya, bagikan catatan yang dikumpulkan dari bilah menu Bootstrap Metronic dengan Anda untuk referensi Anda. Konten spesifiknya adalah sebagai berikut
1. Pendahuluan
1). Konfigurasi Lingkungan
2). Ekstrak halaman
3). Menu Hasilkan Secara Dinamis (Tree Level Tidak Terbatas)
2. Konfigurasi Lingkungan Sistem
Proyek ini membutuhkan dukungan data program, di sini MVC5.0+EF6.0 [SQLServer] dipilih (tidak ada interpretasi arsitektur MVC dan SQLServer)
Lingkungan yang Menjalankan: VS2013+MVC5.0+EF6.1+SQLServer2012
Nama Solusi: Nama Proyek Appsolution: App.web (Lapisan UI) dan App.models (Lapisan Akses Data) - Mode Akses Langsung
Ekstrak semua file di bawah tema ke konten MVC, ekstrak index.html admin ke _layout.cshtml untuk mempersiapkan transformasi
3. Buat database dan tabel
Database: AppDatabase
Buat tabel data berikut dan buat appdb.edmx
Gunakan [appDatabase] go/****** Objek: Tabel [dbo]. [Sysmodule] Tanggal skrip: 2015/9/15 21:03:39 *******/Set Ansi_nulls Ongoset Quoted_Identifier Ongoset ansi_padding Ongocreate Tabel [dbo]. [Name] [varchar](50) NOT NULL, --Menu Name [ParentID] [varchar](50) NULL, --Super ID [Url] [varchar](200) NULL, --URL [Iconic] [varchar](200) NULL, --Iconic [Sort] [int] NULL, --Sort [Enable] [bit] NOT NULL, --Does [CreateTime] [datetime] NULL, --Create Time [IsLast] [bit] NOT NULL --Is the last item CONSTRAINT [PK_SysModule] PRIMARY KEY CLUSTERED ( [Id] ASC)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]) ON [PRIMARY]GOSET ANSI_PADDING OFFGOALTER TABLE [DBO]. [Sysmodule] dengan Nocheck Add Constraint [fk_sysmodule_sysmodule] Kunci asing ([ParentID]) Referensi [DBO]. [Sysmodule] ([id]) Tabel goalter [DBO]. [Sysmodule] noCheck Constropt [fk_sysmodule_sysmodule] goCheck]
Data buatan
Masukkan ke [sysmodule] ([id], [name], [ParentId], [url], [ikon], [sort], [enable], [createTime], [isLast]) nilai ('0', 'root', 'root', 'index', 'Icon-seettings', null, 0, null, 0) masukkan ke dalam [sysmod ',' Icon-seettings ', null, 0, null, null, 0) masukkan ke dalam [sysmod' [sysmod '] ([Id], [name], [Parentid], [url], [ikon], [sort], [enable], [createTime], [isLast]) nilai ('1', 'menu primer 01', '0', 'indeks', 'ikon-setting', null, 0, null, 0) Masukkan ke dalam [sysmodule]] ([Id], [name], [Parentid], [url], [ikon], [sort], [enable], [createTime], [isLast]) nilai ('11', 'menu primer 01-01', '1', 'indeks', 'penetapan ikon', null, 0, null, null, 0) masukkan ke dalam [sysmod ']] ([Id], [name], [Parentid], [url], [ikon], [sort], [enable], [createTime], [isLast]) nilai ('111', 'menu tiga tingkat01-01-01', '11', 'index', 'ikon-link', null, 0, null, 1) Insert ke dalam [Sysm. ([Id], [name], [Parentid], [url], [ikon], [sort], [enable], [createTime], [isLast]) nilai ('112', 'menu level 3 01-01-02', '11', 'indeks', 'ikon-setting', null, 0, null, 1) Insert (Sysm. ([Id], [name], [Parentid], [url], [ikon], [sort], [enable], [createTime], [isLast]) nilai ('12', 'menu level 2 01-02', '1', 'indeks', 'ikon-link', null, 0, null, null, 1) masukkan ke dalam [sysmod ']] ([Id], [name], [Parentid], [url], [ikon], [sort], [enable], [createTime], [isLast]) nilai ('13', 'level kedua 01-03', '1', 'indeks', 'ikon-link', null, 0, null, 1) Masukkan ke dalam [sysmodule '] ([Id], [name], [ParentId], [url], [ikon], [sort], [enable], [createTime], [isLast]) nilai ('2', 'menu primer 02', '0', 'indeks', 'ikon-settings', null, 0, null, 0) Masukkan ke dalam [sysmodule]] ([Id], [name], [Parentid], [url], [ikon], [sort], [enable], [createTime], [isLast]) nilai ('21', 'menu primer 02-01', '2', 'indeks', 'penetapan ikon', null, 0, null, null, 0) masukkan ke dalam [sysmod ']] ([Id], [name], [ParentId], [url], [ikon], [sort], [enable], [createTime], [isLast]) nilai ('211', 'level 3 menu02-01-01', '5', 'index', 'ikon-link', null, 0, null, 1) Insert ke dalam [Sysm ke dalam [Sysm. ([Id], [name], [ParentId], [url], [ikon], [sort], [enable], [createTime], [isLast]) nilai ('212', 'menu level 3 02-01-02', '5', 'index', 'ikon-link', null, 0, null, 1) Insert ke dalam [Sysm ke dalam [Sysm ke dalam [SYSMOD ke dalam [SYSMOD ', SYSMOD]] [SYSMOD]] SYSMOD] [SYSMOD]] ([Id], [name], [Parentid], [url], [ikon], [sort], [enable], [createTime], [isLast]) nilai ('22', 'menu level 2 02-02', '2', 'indeks', 'ikon-link', null, 0, null, null, 1) masukkan ke dalam [sysmod ']] ([Id], [name], [Parentid], [url], [ikon], [sort], [enable], [createTime], [isLast]) nilai ('23', 'menu tingkat kedua02-03', '2', 'indeks', 'ikon-link', null, 0, null, null, 1) masukkan ke dalam [sysmod ']] ([Id], [name], [Parentid], [url], [ikon], [sort], [enable], [createTime], [isLast]) nilai ('3', 'menu primer 03', '0', 'indeks', 'ikon-setting', null, 0, null, 0) Masukkan ke dalam [sysmodule]] ([Id], [name], [Parentid], [url], [ikon], [sort], [enable], [createTime], [isLast]) nilai ('31', 'menu primer 03-01', '3', 'indeks', 'penetapan ikon', null, 0, null, null, 0) masukkan ke dalam [sysmod ']] ([Id], [name], [ParentId], [url], [ikon], [sort], [enable], [createTime], [isLast]) nilai ('311', 'Level 3 menu03-01-01', '31', 'index', 'ikon-link', null, 0, null, 1) Insert ke dalam [Sysm ke dalam [Sysm ke dalam [Sysm ke dalam [SYSMOD ',' ICON-LINK ', NULL, 0, NULL, NULL, SYSMOD TO [SYSMOD INSED INSED INSED INSED INSED INSED INSED INSED INSED INSE [SYSMOD]] ([Id], [name], [ParentId], [url], [ikon], [sort], [enable], [createTime], [isLast]) nilai ('312', 'menu level 3 03-01-02', '31', 'index', 'ikon-link', null, 0, null, 1) Insert ke dalam [Sysm ke dalam [Sysm ke dalam [Sysm ke dalam [SYSMOD ',' ICON-LINK ', NULL, 0, NULL, NULL, SYSMOD INDOT dalam [SYSMOD ke dalam [SYSMUD ([Id], [name], [Parentid], [url], [ikon], [sort], [enable], [createTime], [isLast]) nilai ('32', 'menu level 2 03-02', '3', 'indeks', 'ikon-link', null, 0, null, 1) masukkan ke dalam [sysmod ',' ikon-link ', null, 0, null, 1) masukkan ke dalam [sysmod']] ([Id], [name], [ParentId], [url], [ikon], [sort], [enable], [createTime], [isLast]) nilai ('33', 'menu tingkat kedua03-03', '3', 'indeks', 'ikon-link', null, 0, null, 1) masukkan ke dalam [sysmule ',' ikon-link ', null, 0, null, null, 1) masukkan ke dalam [sysmod']] ([Id], [name], [ParentId], [url], [ikon], [sort], [enable], [createTime], [isLast]) nilai ('4', 'menu primer 04', '0', 'indeks', 'ikon-settings', null, 0, null, 0) Masukkan ke dalam [sysmodule]] ([Id], [name], [Parentid], [url], [ikon], [sort], [enable], [createTime], [isLast]) nilai ('41', 'menu primer 04-01', '4', 'indeks', 'ikon-link', null, 0, null, null, 1) masukkan ke dalam [sysmod ']] ([Id], [name], [Parentid], [url], [ikon], [sort], [enable], [createTime], [isLast]) nilai ('42', 'menu tingkat kedua04-02', '4', 'indeks', 'ikon-link', null, 0, null, 1) (22 baris yang terpengaruh))4. Ekstrak tata letak halaman penting
Kami adalah sistem backend sehingga kami menjaga bagian atas. Menu dan kaki kiri 3 bagian
Saya sudah mengekstraknya, silakan salin
<! Doctype html> <html lang = "en"> <head> <meta charset = "utf-8" /> <iteme> metronic | Layout Display </itement> <meta http-equiv = "x-ua-kompatibel" content = "ie = edge"> <meta content = "width = device-width, skala awal = 1" name = "viewport" /> <meta content = "" name = "description" /> <meta content = "" name = "name" /> <meta link = "" name = "description" /> <meta content = "" name = "name" /> <meta link = "" name = "description" /<meta content = "" name = "name" /> <meta link = "" name = "description" /<meta content = "" name = "name" /> <Meta link = "" name = "Deskripsi" /<meta content = "" name = "name" / /> href = "~/konten/aset/global/plugin/font-Awesome/css/font-Awesome.min.css" rel = "stylesheet" type = "text/css"/> <tautan href = "~/content/aset/global/plugin/simple-line-line-icons/simple-line-icons.min-cons.min/conte/cooleing/plugin =" stye = "stye =" styse "stye" styse/simple-line-line-icons.min.min <tautan href = "~/konten/aset/global/plugin/bootstrap/css/bootstrap.min.css" rel = "stylesheet" type = "text/css"/> <tautan href = "~/content/aset/global/plugin/seragam/css/uniform.default.cssss/conts =" relper = "CGARE" CSS/CSS/Uniform.default. href = "~/konten/aset/global/plugin/bootstrap-switch/css/bootstrap-switch.min.css" rel = "stylesheet" type = "text/css"/<!-akhir gaya wajib global-> <!-Mulai gaya plugin level halaman-> <tautan href = "~/konten/aset/global/plugin/bootstrap-daterangePicker/daterangePicker-bs3.css" rel = "stylesheet" type = "text/css"/> <link href = "~/konten/aset/global/plugin/fullcalendar/fullcalendar.min.min.csssss" "rel" "fullcalendar/fullcalendar.min.min" " href = "~/konten/aset/global/plugin/jqvmap/jqvmap.css" rel = "stylesheet" type = "text/css"/> <!-styles plugin level halaman akhir-> <!-style page styles-> <link href = "~/konten/aset/admin/kupu/css/css/css" TEPS "TON" TON "TEK" TEPS/CONSS/CSSS/CSS/CSSS/TEPSS. " type = "Text/CSS"/> <!-Gaya Halaman Akhir-> <!-Mulai gaya tema-> <tautan href = "~/konten/aset/global/css/komponen.css" id = "style_components" rel = "stylesheet" type = "text/css"/<tautan href = "~ ~ ~ ~ ~ rel = "stylesheet" type = "text/css"/> <link href = "~/konten/aset/admin/tata letak/css/tata letak.css" rel = "stylesheet" type = "Text/CSS"/> <tautan href = "~/konten/admin/admin/tata letak/tata letak/tata letak/tata letak/tata letak/tata letak/tata letak/tata letak/tata letak/tata letak/tata letak/tata letak/tata letak/tata letak/tata letak/tata letak/tata letak/ type = "text/css" id = "style_color"/> <link href = "~/konten/aset/admin/tata letak/css/custom.css" rel = "stylesheet" type = "text/css"/<!-end tema gaya-> <tautan rel = "icon shortcut" href = "fav =" faVic = "fav =" fav = "fav =" fav = "fav =" href = "fav =" fav = "fav =" fav = "href =" faVic. <Div> <!-Mulailah header dalam-> <div> <!-Mulai logo-> <ver> <a href = "index.html"> <img src = "~/konten/aset/admin/tata letak/img/logo.png"/> </a> <div> </div> </div> <! href = "javascript :;" data-toggle="collapse" data-target=".navbar-collapse"> </a> <!-- END RESPONSIVE MENU TOGGLER --> <!-- BEGIN TOP NAVIGATION MENU --> <div> <ul> <!-- BEGIN NOTIFICATION DROPDOWN --> <!-- DOC: Apply "dropdown-dark" class after below "dropdown-extended" to change the dropdown styte --> <li id="header_notification_bar"> <a href = "javascript :;" data-toggle="dropdown" data-hover="dropdown" data-close-others="true"> <i></i> <span> 7 </span> </a> <ul> <li> <h3><span>12 pending</span> notifications</h3> <a href="extra_profile.html">view all</a> </li> <li> <ul style="height: 250px; " data-handle-color = "#637283"> <li> <a href = "javascript:;"> <span> Baru saja </span> <span> <span> <i> </i> </span> Pengguna baru terdaftar. </span> </a> </li> <li> <a href = "javascript:;"> <span> 3 menit </span> <span> <span> <i> </i> </span> server #12 kelebihan beban. </span> </a> </li> <li> <a href = "javascript:;"> <span> 3 menit </span> <span> <span> <i> </i> </span> server #12 kelebihan beban. </span> </a> </li> <li> <a href = "javascript:;"> <span> 10 menit </span> <span> <span> <i> </i> </span> server #2 tidak merespons. </span> </a> </li> <li> <a href = "javascript:;"> <span> 14 jam </span> <span> <span> <i> </i> </span> kesalahan aplikasi. </span> </a> </li> <li> <a href = "javascript:;"> <span> 2 hari </span> <span> <span> <i> </i> </span> database kelebihan 68%. </span> </a> </li> <li> <a href = "javascript:;"> <span> 3 hari </span> <span> <span> <i> </i> </span> IP pengguna diblokir. </span> </a> </li> <li> <a href = "javascript:;"> <span> 4 hari </span> <span> <span> <i> </i> </span> Server penyimpanan #4 tidak menanggapi dfdfdfd. </span> </a> </li> <li> <a href = "javascript:;"> <span> 5 hari </span> <span> <i> </i> </span> kesalahan sistem. </span> </a> </li> </li> <li> <a href = "javascript:;"> <span> 9 hari </span> <span> <span> <i> </i> </span> Server penyimpanan gagal. </span> </a> </li> </li> </li> </li> </li> </li> </li> </li> </li> </li> <!-- END NOTIFICATION DROPDOWN --> <!-- BEGIN INBOX DROPDOWN --> <!-- DOC: Apply "dropdown-dark" class after below "dropdown-extended" to change the dropdown styte --> <li id="header_inbox_bar"> <a href = "javascript :;" Data-koggle = "dropdown" data-hover = "dropdown" data-close-hother = "true"> <i> </i> <span> 4 </span> </a> <ul> <li> <h3> Anda memiliki <span> 7 Pesan baru </span> </h3> <a href = "page_inbox.html"> LIGHT; "LIGE </href =" LiREF = "PAGE_INBOX.HTML"> LIGTION </H3> </href = "page_inbox.html"> data-handle-color="#637283"> <li> <a href="inbox.html?a=view"> <span> <img src="~/Content/assets/admin/layout3/img/avatar2.jpg"> </span> <span> <span> Lisa Wong </span> <span> Just Now </span> </span> <span> <span> Vivamus Sed Auctor Nibh Conce Nibh.Auktor Nibh Auctor Nibh ... </span> </a> </li> <li> <a href = "inbox.html? A = view"> <pan> </Img Src = "~/konten/admin/LAYOUT3/IMG/Avatar. <span> 16 menit </span> </span> <span> vivamus seD congue nibh autor nibh nibh nibh. autor nibh autor nibh... </span> </a> </li> <li> <a href="inbox.html?a=view"> <span> <img src="~/Content/assets/admin/layout3/img/avatar1.jpg"> </span> <span> <span> Bob Nilson </span> <span> 2 hrs </span> </span> <span> vivamus sed nibh autor nibh nibh. Auto Nibh Auto Nibh ... </span> </a> </li> <li> <a href = "inbox.html? A = view"> <span> <mimg src = "~/konten/aset/admin/tata letak3/img/avatars.jpg"> </span> <pan> span> span> span </span> </span> </span> </span> span> span> span> span> span> span> span> span/span </span> </span> </span> </span> </span> </span> </span> </span> </span> </span> </span> </span> </span> <span> vivamus sed Auto 40% nibh nibh nibh ... </span> </li> <li> <a href = "inbox.html? a = view"> <span> <mimg src = "~/kontan/admin/tata letak3/img/avatar3.jpg"> </span> <pan> <span> span> </span> </span> </avatar. </span> </span> <span> vivamus seD congue nibh autotor nibh nibh. autotor nibh autotor nibh... </span> </a> </li> </ul> </li> </li> </li> </li> </li> <!-- END INBOX DROPDOWN --> <!-- BEGIN TODO DROPDOWN --> <!-- DOC: Apply "dropdown-dark" class after below "dropdown-extended" to change the dropdown style --> <li id="header_task_bar"> <a href = "javascript :;" Data-koggle = "dropdown" data-hover = "dropdown" data-close-hother = "true"> <i> </i> <span> 3 </span> </a> <ul> <li> <h3> Anda memiliki <span> 12 tertunda </span> </h3> <a href = "page_todo. 275px; " data-handle-color="#637283"> <li> <a href="javascript:;"> <span> <span> New release v1.2 </span> <span>30%</span> </span> <span> <span> <span>Application deployment</span> <span>65%</span> </span> <span> <span> <span> aria-valuenow="65" aria-valuemin="0" aria-valuemax="100"><span>65% Complete</span></span> </span> </a> </li> <li> <a href="javascript:;"> <span> <span>Mobile app release</span> <span>98%</span> </span> <span> <span> <span>98%</span> </span> <span> <span> <span> <span> 98%</span> </span> <span> <span> <span> <span> migrasi database </span> <span> 10%</span> </span> <span> <span aria-valuenow = "10" ARIA-VALUEMIN = "0" ARIA-VALUENOW = "10" ARIA-VALUEMIN = "0" ARIA-VALUEMAX = "10" ARIA-VALUEMIN = "0" ARIA-VALUEMAX = "10" ARIA " </a> </li> <li> <a href = "javaScript:;"> <span> <span> Peningkatan server web </span> <span> 58%</span> </span> <span> <span> <span> Peningkatan server web </span> <span> 58%</span> </span> <span> <pan> <pan span> ARIA = vanu = 58%</span> </span> <pan> <span> <pan> </span oria = 58%</span> </span> <pan> <span> <span> <span- span oria = vanu = 58%</span> </span> <pan> <span> <span> <pan- span oria = vanu = vanu = vanu = vanu = span- vane </span- van- van. ARIA-VALUEMAX = "100"> <span> 58% Lengkap </span> </span> </span> </a> </li> <li> <a href = "javascript :;"> <span> <span> <span> PELANJUTAN </span> <span> 85% </span> </span> <span> <span> ARIA </span- "85% </span> </span> <span> <span- span =" van- "85% </span> </span> <span> <span> ARIA (span-val-" 85% </span> </span> <span> <span> <pan- van- "van- valu" ARIA-VALUEMAX = "100"> <span> 85% Lengkap </span> </span> </span> </li> <li> <a href = "javascript:;"> <span> <span> rilis UI baru </span> <span> 38% </span> </span> <span> <span> <span> ARIA-ARIA-38% </span> </span> <span> <span> <span> ARIA-VAL = "0 ARIA-VALUEMAX = "100"> <span> 38% Lengkap </span> </span> </span> </a> </li> </ul> </li> </li> </li> </li> </li> </li> </li> <!-DOKUT "DOKUT" AKHIR-> <!-Mulailah dropdown pengguna-</li> <! " dropdown styte -> <li> <a href = "javascript :;" data-toggle="dropdown" data-hover="dropdown" data-close-others="true"> <img src="~/Content/assets/admin/layout/img/avatar3_small.jpg" /> <span> Nick </span> <i></i> </a> <ul> <li> <a href="extra_profile.html"> <i></i> My Profile </a> </li> <li> <a href = "page_calendar.html"> <i> </i> Kalender saya </a> </li> <li> <a href = "page_calendar.html"> <i> </i> calendar </a> </Li> <i> <i> </i> Calendar saya </a> </Li> <i> <i> <i> </i> Kalender saya </a> </Li> <i> <i> <i> </i> Calendar </a> </Li> <i> <i> <i> </i> Calendar </a> </Li> <i> <i> <i> </i> CALENDAR saya </a> </Li> <li> <"OBLOT" OBOT. " Kotak masuk saya <span> 3 </span> </a> </li> <li> <a href = "page_todo.html"> <i> </i> tugas saya <span> 7 </span> </a> </li> <li> <li> <li> <a href = "extra_lock.htm href="login.html"> <i></i> Log Out </a> </ul> </li> </li> <!-- END USER LOGIN DROPDOWN --> <!-- BEGIN QUICK SIDEBAR TOGGLER --> <!-- DOC: Apply "dropdown-dark" class after below "dropdown-extended" to change the dropdown styte --> <li> <a href="javascript:;"> <i> </i> </a> </li> <!-Akhiri toggler sidebar cepat-> </ul> </div> <!-Akhiri menu navigasi teratas-> </div> <!-header akhir dalam-> </div> <!-BERGETUNG-> <v> </Div> <!-Mulai wadah-> <! data-auto-scroll = "false" untuk menonaktifkan sidebar dari pengguliran/fokus otomatis-> <!-doc: ubah data-auto-speed = "200" untuk menyesuaikan sub-menu geser ke atas/ke bawah kecepatan-> <v> <!-mulai menu bilah sisi (> <!-doc: light-sidebar-sidebar-au-light "Toords afterse (> <!-doc: page-sidebar-sidebar-au-light class" Tanpa "Toord-Side-Side-Side-Side-Side-Side-Side-Side-Side-Side-Side-Side-Side-Side" Class Terseak-Side-Side-Side-Side-Side " <!-DOC: Terapkan "halaman-halaman-sidebar-menu-hover-submenu" tepat setelah "halaman-halaman-menu-menu-menu" untuk memungkinkan mode menu yang dapat dilayang (hover vs menurut)-> <!-doc: menerapkan "halaman-side-side-side-side-side-side-menu <!-- DOC: Set data-auto-scroll="false" to disable the sidebar from auto scrolling/focusing --> <!-- DOC: Set data-keep-expand="true" to keep the submenues expanded --> <!-- DOC: Set data-auto-speed="200" to adjust the sub menu slide up/down speed --> <ul data-keep-expanded="false" data-auto-scroll="true" data-slide-speed = "200"> <!-doc: untuk menghapus toggler sidebar dari bilah sisi Anda hanya perlu sepenuhnya menghapus "elemen sidebar-sidebar-flapper" Li-> <!-<!-Mulailah tombol sidebar-sidebar-> </Div> <!-end sideBar bilah samping-> </Div: lepaskan: end love sidebar sidebar-> </div: leve-to leve to the sidebar end bilah samping-> </end foule to the mill bikbar dari Li found to the Lies To Lib: end lepaskan tombol sidebar-> </Divor </Div> <! the below "sidebar-search-wrapper" LI element --> <li> <a href="javascript:;"> <i></i> <span>Multi Level Menu</span> <span></span> </a> <ul> <li> <a href="javascript:;"> <i></i> Item 1 <span></span> </a> <ul> <li> <a href="javascript:;"> <i></i> Sample Link 1 <span></span> </a> <ul> <li> <a href="#"><i></i> Sample Link 1</a> </li> <li> <a href="#"><i></i> Sample Link 1</a> </li> <li> <a href = "#"> <i> </i> Tautan sampel 1 </a> </li> <li> <a href = "#"> <i> </i> Tautan sampel 1 </a> </li> <li> <a href = "#" </Li> </i> CAMING LINK 1 </a> </a> </Li> </Li> </Li> </i> </a> </a> </a> </Li> </Li> </Li> </Li = "#" </Li> </Li> </a> </a> </a> </li> </Li> </Li> </Li> <a> </a> </a> </a> </li> </Li> <" 1 </a> </li> <li> <a href = "#"> <i> </i> sampel tautan 2 </a> </li> <li> <a href = "#"> <i> </i> tautan sampel 3 </a> </li> </li> </li> <li> <li> <li> <a href = "#"> </li> </li> </li> <li> <li> <Li> <a href = "#"> </li> </li> </li> <li> <li> <a href = "#"> </Li> </li> </li> <li> <li> <a href = "#" <li> <a href = "#"> <i> </i> Tautan sampel 1 </a> </li> </li> <li> <a href = "#"> <i> <i> tautan sampel 1 </a> </li> <li> <a href = "#"> <i> </i> Sampel tautan 1 </a> <i> <i> <i> <a> <a> <a> </link </Li> <"HREF ="#"> <i> </i> Sampel Tautan 1 </a> <i> <i> <" Tautan 1 </a> </li> </li> </li> <li> <a href = "#"> <i> </i> item 3 </a> </li> </li> </li> </li> </li> </li> <!-Menu Sidebar-> </Div> </Div> <!-Sisi Akhir-> <! MODAL FORM--> <div id="portlet-config" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true"> <div> <div> <div> <button type="button" data-dismiss="modal" aria-hidden="true"></button> <h4>Modal title</h4> </div> <div> <div> Widget Formulir Pengaturan Berada di Sini </SIV> <IV> <TOLUMTY TYPE = "Tombol"> Simpan Perubahan </button> <tombol type = "tombol" data-dismiss = "Modal"> Tutup </button> </div> </div> <!-/.modal-content-> </Div> <!-/.modal-dialog-> </div> </.mod </div> <!-/.modal-dialog-> </div> </.mod Style Customizer-> <div> <div> </div> <div> </div> <div> <div> <span> warna tema </span> <ul> <li data-style = "default" container = "body" data-original-title = "Default"> </li> <Li data-style = "Data-container =" Data = "Data-t-container =" Data-t-t-title = "Data-container =" Data-container "> <Li Data-style = "biru" Data-container = "body" data-original-title = "blue"> </li> <li data-style = "abu-abu" container = "body" data-original-title = "abu-abu"> </li> <Li-style = "Light" Data-container = "body" Data-original = "Li-T-style =" Light "Data-container =" body "Data-original Data-style = "Light2" Data-Container = "body" data-html = "true" data-original-title = "Light 2"> </li> </ul> </div> <div> <span> Gaya tema </span> <pilih> Option value = "square" bundar "dipilih"> Opsi Corners </spando> </Div. " <span> tata letak </span> <pilect> <option value = "fluid" dipilih = "dipilih"> fluid </tiption> <option value = "boxed"> boxed </pection> </tect> </div> <div> <pan> header </span> <pilih> opsi = "fixed" dipilih = "dipilih"> opsi </span> <span> <sport> <pect> "fixed" fixed "dipilih =" dipilih "> fixed </span> <pect> <pect>" fixed "fixed" fixed "dipilih =" dispulected "> Fixed </Span> <pect> <pect> <pect> <span> Top Menu Dropdown </span> <select> <option value="light" selected="selected">Light</option> <option value="dark">Dark</option> </select> </div> <div> <span> Sidebar Mode </span> <select> <option value="fixed">Fixed</option> <option value="default" selected="selected">Default</option> </select> </div> <div> <span> Sidebar Menu </span> <select> <option value="accordion" selected="selected">Accordion</option> <option value="hover">Hover</option> </select> </div> <div> <span> Sidebar Style </span> <select> <option value="default" selected="selected">Default</option> <option> <option value="default" Dipilih = "Dipilih"> default </tiption> <pection> <option value = "default" dipilih = "dipilih"> default </pection> <pection> <option value = "light"> light </pect> </dectt> </div> <vout> <pan> Posisi sidebar </span> <pilih> <pect> value nilai = "KIRECTED =" KANAN> PILIMAN </SPANET> </span> </span </span> </span </span> </span> </span> </span> </span> </span> </span> </span> </span> </span> </span> </span> </span> </span> </div> <div> <span> Footer </span> <select> <option value="fixed">Fixed</option> <option value="default" selected="selected">Default</option> </select> </div> </div> <!-- END STYLE CUSTOMIZER --> <!-- BEGIN PAGE HEADER--> <div> <ul> <li> <i></i> <a href = "index.html"> home </a> <i> </i> </li> <li> <a href = "#"> tata letak </a> </li> </ul> </div> <h3> tata letak <small> LayoT & statistik </small> </h3> <!-header end @! <div> </div> </div> </div> <!-Konten Akhir-> <!-Mulailah sidebar cepat-> <a href = "javaScript:;"> <i> </i> </a> <div> <v div> <ul> <li> <a href = "#quick_sidebar_tab_1" Li- lon = " <a href = "#quick_ssideebar_tab_2" data-koggle = "tab"> peringatan <span> 7 </span> </a> </li> <li> <a href = "javascript :;" data-kilat = "dropdown"> lebih <i> </i> </a> <ul role = "menu"> <li> <a href = "#quick_ssidebar_tab_3" data-kilat = "tab"> <i> </i> </a> </li> <li> <a href = "#i quick_sideBar_" Notifications </a> </li> <li> <a href="#quick_sidebar_tab_3" data-toggle="tab"> <i></i> Activities </a> </li> <li> <a href="#quick_sidebar_tab_3" data-toggle="tab"> <i></i> Activities </a> </li> <li> <li> <a href = "#quick_ssideBar_tab_3" data-koggle = "tab"> <i> </i> pengaturan </a> </li> </ul> </li> </ul> </li> </ul> <Div> <v ID = "Quick_sideBar_tab_1"> <Div Data-Rail-Color = "#K-SUPRICK =" DATEDBAR " <h3>Staff</h3> <ul> <li> <div> <span>8</span> </div> <img src="~/Content/assets/admin/layout/img/avatar3.jpg"> <div> <h4>Bob Nilson</h4> <div> Project Manager </div> </div> </li> <li> <img src = "~/konten/aset/admin/tata letak/img/avatar1.jpg"> <div> <h4> nick Larson </h4> <div> Direktur Seni </div> </li> <li> <pan> <span> 3 </span> </div> <mg src = "~/content/assets/lay -out/lay -lay. Hubert</h4> <div> CTO </div> </li> <li> <img src="~/Content/assets/admin/layout/img/avatar2.jpg"> <div> <h4>Ella Wong</h4> <div> CEO </div> </li> </ul> <h3>Customers</h3> <ul> <li> <div> <span>2</span> </div> <img src = "~/konten/aset/admin/tata letak/img/avatar6.jpg"> <hv> <h4> Lara Kunis </h4> <dv> CEO, Loop Inc </Div> <v Div> Last terlihat 03:10 AM </Div> </Div> </Li> <van> </span </div </Div> </Div> </Li> <van> </span </div </div> </Div> </Li> <Div> SPANET LAKU 03:0 src = "~/konten/aset/admin/tata letak/img/avatar7.jpg"> <div> <h4> ernie kyllonen </h4> <ver> manajer proyek, <br> smartbizz ptl </div> </div> </li> <li> <img src = "~/konten/assets/assets/admin/avg> <li> <li> <mmg src =" ~/~/~/assets/admin/admin/AVG/AVG/AVG/AVG/AVG/AVG/AVG/AVG/AVG/AVG/AVG/AVG/AVG/AVG/AVG <h4> Lisa Stone </h4> <div> cto, Keort Inc </div> <div> Terakhir terlihat 13:10 </div> </div> </li> <li> <div> <span> 7 </span> </div> <mg src = "~/konten/aset/admin/tata letak/img/avatar9.jpg =" ~/content/asset/admin/tata letak/img/avatar9.jpg = "~/content/assets/admin/tata letak/img/avatar9.jpg" CFO, H&D LTD </div> </li> </li> <li> <img src="~/Content/assets/admin/layout/img/avatar10.jpg"> <div> <h4>Irina Savikova</h4> <div> CEO, Tizda Motors Inc </div> </li> <li> <div> <span>4</span> </div> <img src = "~/konten/aset/admin/tata letak/img/avatar11.jpg"> <div> <h4> maria gomez </h4> <div> Manager, Infomatik Inc </Div> <div> Terakhir terlihat 03:10 </Div> </Div> </Li> </Div> <v> <v> </Div> </Div> </li> </Div> <v> <v> </Div> </Div> </li> </div> <v> <v> </Div> </Div> href="javascript:;"><i></i>Back</a> </div> <div> <div> <img src="~/Content/assets/admin/layout/img/avatar3.jpg" /> <div> <span></span> <a href="javascript:;">Bob Nilson</a> <span>20:15</span> <span> When could you Kirimkan saya laporannya? </span> </div> </div> <div> <img src = "~/content/asset/admin/tata letak/img/avatar2.jpg"/> <van> <span> </span> <a href = "javascript :;"> ella wong </a> <span> 20:15 </span> <span> span> ella wong. Saya akan mengirimkannya segera </span> </div> </div> <div> <img src = "~/konten/aset/admin/tata letak/img/avatar3.jpg"/> <vers> <span> </span> <a href = "javascript:;"> bob nilson </a> <pan> <a 20:15 </span/span. Terima kasih! :) </span> </div> </div> <div> <img src = "~/konten/aset/admin/tata letak/img/avatar2.jpg"/> <van> <span> </span> <a href = "javascript :;"> ella wong </a> <span> 20:16 </span> </span> <span> sang sana> ella wong </a> <span> 20:16 </span> </span> <span> span> ella wong </a> <span> 20:16 </span> span> span> span> ella wong. Maaf atas keterlambatannya. </span> </div> </div> <div> <img src="~/Content/assets/admin/layout/img/avatar3.jpg" /> <div> <span></span> <a href="javascript:;">Bob Nilson</a> <span>20:17</span> <span> No probs. Luangkan waktu Anda :) </span> </div> </div> <div> <img src = "~/konten/aset/admin/tata letak/img/avatar2.jpg"/> <vers> <span> </span> <a href = "javascript:;"> ella wong </a> <a span> 20:40 Saya baru saja mengirim email kepada Anda. </span> </div> </div> <div> <img src = "~/konten/aset/admin/tata letak/img/avatar33.jpg"/> <van> <span> </span> <a href = "javascript :;"> Bob Nilson </a> <span> 20:17 </span> <span> great! Terima kasih. Akan segera memeriksanya. </span> </div> </div> <div> <img src = "~/konten/aset/admin/tata letak/img/avatar2.jpg"/> <van> <span> </span> <a href = "javascript :;"> ella wong </a> <span> 20:40 </span> <span> <span> <span> sang sana> ella wong. </span> </div> </div> <div> <img src = "~/konten/aset/admin/tata letak/img/avatar33.jpg"/> <van> <span> </span> <a href = "javascript:;"> Bob nilson </a> <span> 20:17 </span>. Saya akan memeriksa dan buzz Anda jika ada yang perlu diperbaiki. </span> </div> </div> </div> </div> <div> <input type = "text" placeholder = "Ketikkan pesan di sini ..."> <v> <typy type = "Tombol"> <i> </i> </button> </div> </div> </Div> </Div> </Div> </Div> </Div> </Div> </Div> </Div> </Div> </Div> </Div> </Div> </Div> </Div> </Div> </Div> </Div> id = "Quick_ssideBar_tab_2"> <dv> <h3> Umum </h3> <ul> <li> <viv> <viv> <viv> <div> <div> <viv> <i> </i> </div> </Div> <v div> Anda memiliki 4 tugas yang tertunda. <span> Ambil tindakan <i> </i> </span> </div> </div> </div> </div> </div> </div> <div> <ver> Baru saja </div> </li> <li> <a href = "FINCRIPS :;"> <v> <v> <v> <v> <dv> </Div> </I -FIND. </div> </div> </div> </div> </div> </div> <div> <div> 20 menit </div> </a> </li> <li> <div> <div> <div> Anda memiliki 5 yang tertunda yang memerlukan ulasan cepat. </div> </div> </div> </div> </div> <div> <div> 24 mins </div> </li> <li> <div> <div> <div> <div> <div> <i></i> </div> </div> <div> New order received with <span> Reference Number: DR23923 </span> </div> </div> </div> </div> <div> <div> 30 mins </div> </div> </li> <li> <div> <div> <div> <div> <div> <i> </i> </div> </div> <div> <div> Anda memiliki 5 keanggotaan yang tertunda yang memerlukan ulasan cepat. </div> </div> </div> </div> </div> <div> <div> 24 menit </div> </li> <li> <div> <div> <div> <div> <Div> <i> </i> </div> </Div> </Div> <ver> <Div> <i> </i> </Div> </Div> <Div> <Div> KEBERIKIT <span> Overlue </span> </div> </div> </div> </div> </div> </div> <div> <div> 2 jam </div> </li> <li> <a href = "javascript :;" telah merilis. </div> </div> </div> </div> </div> </div> <div> <div> 20 mins </div> </a> </li> </ul> <h3>System</h3> <ul> <li> <div> <div> <div> <div> <div> <div> <i></i> </div> </div> <div> You have 4 pending tasks. <span> Ambil tindakan <i> </i> </span> </div> </div> </div> <div> Anda memiliki 4 tugas yang tertunda. <span> Ambil tindakan <i> </i> </span> </div> </div> </div> </div> </div> <div> <div> Baru saja </div> </li> <li> <a href = "javascript :;" telah merilis. </div> </div> </div> </div> </div> </div> <div> <div> 20 menit </div> </a> </li> <li> <div> <div> <div> <div> <div> <v> <i> </i> </Div> <d Div> <Div> memiliki 5 yang mensyaratkan keanggotaan yang mensyaratkan cepat. </div> </div> </div> </div> <div> <div> 24 mins </div> </li> <li> <div> <div> <div> <div> <div> <div> <i></i> </div> </div> </div> <div> New order received with <span> Reference Number: DR23923 </span> </div> </div> </div> </div> </div> </div> <div> <div> 30 menit </div> </li> <li> <div> <div> <div> <div> <viv> <i> </i> </div> </div> </div> <div> <div> Anda memiliki 5 keanggotaan yang tertunda yang memerlukan tinjauan cepat. </div> </div> </div> </div> <div> <div> 24 menit </div> </li> <li> <div> <div> <div> <div> <ver> <i> </i> </div> </div> </Div> <div> <Div> </Ink. <span> Overlue </span> </div> </div> </div> </div> </div> </div> <div> 2 jam </div> </li> <li> <a href = "javaScript:;"> <v> <v> <v> <Div> <i> </i for. </div> </div> </div> </div> </div> <div> <div> 20 menit </div> </a> </li> </ul> </div> </div> </div> </div> <div> </Div> </div> </a> </ul> </Div> </Div> </Div> " <h3> Pengaturan Umum </h3> <ul> <li> Mengaktifkan pemberitahuan <input type = "kotak centang" Ukuran data = "Kecil" data-on-color = "Sukses" data-on-text = "on" data-off-color = "Data"-Text = "OFF"> </li> <li> memungkinkan pelacakan <input tipe "-dATA" DATA "ONPEX =" OFF "- " data-off-color="default" data-off-text="OFF"> </li> <li> Log Errors <input type="checkbox" checked data-size="small" data-on-color="danger" data-on-text="ON" data-off-color="default" data-off-text="OFF"> </li> <li> Auto Sumbit Issues <input type="checkbox" data-size="small" data-on-color="warning" data-on-text="ON" data-off-color="default" data-off-text="OFF"> </li> <li> Enable SMS Alerts <input type="checkbox" checked data-size="small" data-on-color="success" data-on-text="ON" data-off-color="default" data-off-text="OFF"> </li> </ul> <h3>System Pengaturan </h3> <ul> <li> Level Keamanan <Colly> <option value = "1"> Normal </tipe> <option value = "2" dipilih> medium </pection> <option value = "e"> tinggi </pection> </tect> </li> <li> Email yang gagal <input value = "5"/</ti> <li> <li> SMA PORT = "5" Notify On System Error <input type="checkbox" checked data-size="small" data-on-color="danger" data-on-text="ON" data-off-color="default" data-off-text="OFF"> </li> <li> Notify On SMTP Error <input type="checkbox" checked data-size="small" data-on-color="warning" data-on-text="ON" data-off-color="default" Data-off-Text = "OFF"> </li> </ul> <div> <ututes> <i> </i> Simpan perubahan </button> </div> </div> </div> </div> </div> </div> </div> </div> </Div> <!-end end Quick Sidebar-> </Div> </Div> end </Div> <! Metronik oleh Keenthemes. </div> <div> <i></i> </div> </div> <!-- END FOOTER --> <!-- BEGIN JAVASCRIPTS(Load javascripts at bottom, this will reduce page load time) --> <!-- BEGIN CORE PLUGINS --> <!--[if lt IE 9]> <script src="~/Content/assets/global/plugins/respond.min.js"></script> <script src="~/Content/assets/global/plugins/excanvas.min.js"></script> <![endif]--> <script src="~/Content/assets/global/plugins/jquery.min.js" type="text/javascript"></script> <script src="~/Content/assets/global/plugins/jquery-migrate.min.js" type="text/javascript"></script> <!-- IMPORTANT! Load jquery-ui.min.js before bootstrap.min.js to fix bootstrap tooltip conflict with jquery ui tooltip --> <script src="~/Content/assets/global/plugins/jquery-ui/jquery-ui.min.js" type="text/javascript"></script> <script src="~/Content/assets/global/plugins/bootstrap/js/bootstrap.min.js" type="text/javascript"></script> <script src="~/Content/assets/global/plugins/bootstrap-hover-dropdown/bootstrap-hover-dropdown.min.js" type="text/javascript"></script> <script src="~/Content/assets/global/plugins/jquery-slimscroll/jquery.slimscroll.min.js" type="text/javascript"></script> <script src="~/Content/assets/global/plugins/jquery.blockui.min.js" type="text/javascript"></script> <script src="~/Content/assets/global/plugins/jquery.cokie.min.js" type="text/javascript"></script> <script src="~/Content/assets/global/plugins/uniform/jquery.uniform.min.js" type="text/javascript"></script> <script src="~/Content/assets/global/plugins/bootstrap-switch/js/bootstrap-switch.min.js" type="text/javascript"></script> <!-- BEGIN PAGE LEVEL SCRIPTS --> <script src="~/Content/assets/global/scripts/meteronic.js" type="text/javascript"></script> <script src="~/Content/assets/admin/layout/scripts/layout.js" type="text/javascript"></script> <script src="~/Content/assets/admin/layout/scripts/quick-sidebar.js" type="text/javascript"></script> <script src="~/Content/assets/admin/layout/scripts/demo.js" type="text/javascript"></script> <script src="~/Content/assets/admin/pages/scripts/index.js" type="text/javascript"></script> <script src="~/Content/assets/admin/pages/scripts/index.js" type="text/javascript"></script> <script src="~/Content/assets/admin/pages/scripts/tasks.js" type="text/javascript"></script> <!-- END PAGE LEVEL SCRIPTS --> <script>jQuery(document).ready(function() { Metronic.init(); // init metronic core components Layout.init(); // init layout QuickSidebar.init(); // init quick sidebarDemo.init(); // init demo features Index.init(); Index.init layout display Daterange(); Index.initJQVMAP(); // init index page's custom scripts Index.initCalendar(); // init index page's custom scripts Index.initCharts(); // init index page's custom scripts Index.initChat(); Index.initMiniCharts(); Tasks.init layout display Widget();}); </script> <!-- END JAVASCRIPTS --></body><!-- END BODY --></html>再次提取菜单代码
<li> <a href="javascript:;"> <i></i> <span>Multi Level Menu</span> <span></span> </a> <ul> <li> <a href="javascript:;"> <i></i> Item 1 <span></span> </a> <ul> <li> <a href="javascript:;"> <i></i> Sample Link 1 <span></span> </a> <ul> <li> <a href="#"><i></i> Sample Link 1</a> </li> <li> <a href="#"><i></i> Sample Link 1</a> </li> <li> <a href="#"><i></i> Sample Link 1</a> </li> </ul> </li> <li> <a href="#"><i></i> Sample Link 1</a> </li> <li> <a href="#"><i></i> Sample Link 2</a> </li> <li> <a href="#"><i></i> Sample Link 3</a> </li> </ul> </li> <li> <a href="javascript:;"> <i></i> Item 2 <span></span> </a> <ul> <li> <a href="#"><i></i> Sample Link 1</a> </li> <li> <a href="#"><i></i> Sample Link 1</a> </li> <li> <a href="#"><i></i> Sample Link 1</a> </li> </ul> </li> <li> <a href="#"> <i></i> Item 3 </a> </li> </ul> </li>
大约在466行-529行
分析上面html可以看出,li包含ul循环调用。所以我们用递归读取菜单
5.拼接菜单栏
创建Home视图Index.cshtml并应用_Layout.cshtml
Bootstrap Metronic并菜单没有提供Ajax模式,我们只能读取数据拼接HTML
过程:读取数据表数据递归调用
using App.Models; menggunakan sistem; menggunakan system.collections.generic; using System.Linq; using System.Web; using System.Web.Mvc; using System.Text;namespace App.Web.Controllers{ public class HomeController: Controller { AppDBContainer db = new AppDBContainer(); public ActionResult Index() { IQueryable<SysModule> menus = db.SysModule.AsQueryable().Where(a=>a.ParentID=="0"); StringBuilder sb = new StringBuilder(); bool firstFlag = true;//The first default expansion GetChildMenus(ref sb, menus, firstFlag);//The second-level menu ViewBag.Menus = sb.ToString(); return View(); } //Recursively call public void GetChildMenus(ref StringBuilder sb, IQueryable<SysModule> menus,bool firstFlag)//The second-level menu { int count = 0; if(!firstFlag) sb.Append("<ul class='sub-menu'>"); foreach (var m in menus) { IQueryable<SysModule> menusChild = db.SysModule.AsQueryable().Where(a => a.ParentID == m.ID); count = menusChild.Count(); sb.AppendFormat("<li class='{0}'>",firstFlag?"start actove open":""); sb.AppendFormat("<a href='{0}'><i class='{1}'></i><span class='title'>{2}</span>{3}</a>", count > 0 ? "javascript:;" : m.Url, m.Iconic, m.Name, count > 0 ? "<span class='arrow '></span>" : ""); firstFlag = false; if (count > 0) GetChildMenus(ref sb, menusChild,firstFlag); sb.Append("</li>"); } if (!firstFlag) sb.Append("</ul>"); }}}去掉提取的li替换成@Html.Raw(ViewBag.Menus)
6. Ringkasan
前端这种东西最考验人的耐心,不信你自己拼接一下
Efek akhir
Penulis: Ymnets
Sumber: http://ymnets.cnblogs.com/
如果大家还想深入学习,可以点击这里进行学习,再为大家附两个精彩的专题:Bootstrap学习教程Bootstrap实战教程
Di atas adalah semua konten artikel ini. Saya berharap ini akan membantu untuk pembelajaran semua orang dan saya harap semua orang akan lebih mendukung wulin.com.