JSP+JavaScript membuat menu drop-down bertingkat kedua:
class (informasi kolom tingkat pertama): classId (penomoran otomatis), className (nama kolom), Nclass (informasi kolom sekunder), NclassId (penomoran otomatis), NclassName ( nama kolom), parentId (id kolom tingkat pertama, terkait dengan classId di tabel kelas)
<%@ halaman contentType=teks/html; charset=GB2312 bahasa=java errorPage=../error.jsp %> <%@ sertakan file=../conn.jsp%> <%@ sertakan file=../ds.jsp%> <%@ taglib uri=http://java.sun.com/jsp/jstl/sql divfix=sql %> <%permintaan.setCharacterEncoding(gb2312); <HTML><KEPALA> <META http-equiv=Jenis Konten konten=teks/html; charset=gb2312> <TITLE>Menu bertingkat</TITLE> <LINK rel=stylesheet type=teks/css href=style.css> </KEPALA> <!--Dapatkan informasi kolom sekunder dari database--> <%String sql=pilih * dari urutan Nclass oleh NclassId asc; HasilSet rs=stmt.executeQuery(sql); %> <!--Simpan informasi kolom sekunder ke dalam array subcat--> <tipe skrip=teks/javascript> var satu hitungan; satu hitungan = 0; subcat = Array baru(); <% int hitungan = 0; while(rs.next()){ %> subcat[<%=count%>] = Array baru(<%=rs.getString(NclassName)%>, <%=rs.getString(NclassId)%>,<%=rs.getString(parentId)%>); <% hitung++; } rs.close(); %> satuhitungan=<%=hitungan%>; <!--Fungsi yang menentukan tampilan pilihan--> fungsi perubahanlokasi(lokasiid) { document.myform.NclassId.length = 0; var locationid=id lokasi; var saya; untuk (i=0;i < satu hitungan; i++) { if (subcat[i][2] == lokasiid) { document.myform.NclassId.options[document.myform.NclassId.length] = baru Pilihan(subkucing[i][0], subkucing[i][1]); } } } </skrip> <Metode FORMULIR=Nama POST=aksi formulir saya=adminsave.jsp?aksi=tambahkan> <TABEL> <TR> <TD>Klasifikasi tingkat pertama</TD> <TD> <PILIH nama=classId onChange=ubah lokasi(document.myform.classId.options [document.myform.classId.selectedIndex].value) ukuran=1> <OPTION nilai yang dipilih>==Silakan pilih kategori tingkat pertama==</OPTION> <sql:query var=query dataSource=$> PILIH * DARI kelas </sql:permintaan> <c:forEach var=item baris=$> <nilai opsi=$>$</option> </c:untukSetiap> </pilih> </TD> <TD>Pilih kategori sekunder</TD> <TD> <PILIH nama=NclassId> <OPTION nilai yang dipilih>==Silakan pilih kategori tingkat kedua==</OPTION> </PILIH> </TD> </TR> </TABEL> </BENTUK> </BODI> </HTML> <%@ halaman contentType=teks/html; charset=GB2312 bahasa=java errorPage=../error.jsp %> <%@ sertakan file=../conn.jsp%> <%@ sertakan file=../ds.jsp%> <%@ taglib uri=http://java.sun.com/jsp/jstl/sql divfix=sql %> <%permintaan.setCharacterEncoding(gb2312); <HTML><KEPALA> <META http-equiv=Jenis Konten konten=teks/html; charset=gb2312> <TITLE>Menu bertingkat</TITLE> <LINK rel=stylesheet type=teks/css href=style.css> </KEPALA> <!--Dapatkan informasi kolom sekunder dari database--> <%String sql=pilih * dari urutan Nclass oleh NclassId asc; HasilSet rs=stmt.executeQuery(sql); %> <!--Simpan informasi kolom sekunder ke dalam array subcat--> <tipe skrip=teks/javascript> var satu hitungan; satu hitungan = 0; subcat = Array baru(); <% int hitungan = 0; while(rs.next()){ %> subcat[<%=count%>] = Array baru(<%=rs.getString(NclassName)%>, <%=rs.getString(NclassId)%>,<%=rs.getString(parentId)%>); <% hitung++; } rs.close(); %> satuhitungan=<%=hitungan%>; <!--Fungsi yang menentukan tampilan pilihan--> fungsi perubahanlokasi(lokasiid) { document.myform.NclassId.length = 0; var locationid=id lokasi; var saya; untuk (i=0;i < satu hitungan; i++) { if (subcat[i][2] == lokasiid) { document.myform.NclassId.options[document.myform.NclassId.length] = baru Pilihan(subkucing[i][0], subkucing[i][1]); } } } </skrip> <Metode FORMULIR=Nama POST=aksi formulir saya=adminsave.jsp?aksi=tambahkan> <TABEL> <TR> <TD>Klasifikasi tingkat pertama</TD> <TD> <PILIH nama=classId onChange=ubah lokasi(document.myform.classId.options [document.myform.classId.selectedIndex].value) ukuran=1> <OPTION nilai yang dipilih>==Silakan pilih kategori tingkat pertama==</OPTION> <sql:query var=query dataSource=$> PILIH * DARI kelas </sql:permintaan> <c:forEach var=item baris=$> <nilai opsi=$>$</option> </c:untukSetiap> </pilih> </TD> <TD>Pilih kategori sekunder</TD> <TD> <PILIH nama=NclassId> <OPTION nilai yang dipilih>==Silakan pilih kategori tingkat kedua==</OPTION> </PILIH> </TD> </TR> </TABEL> </BENTUK> </BODI> </HTML> |