Artikel ini menjelaskan efek dari menu tautan sekunder yang diimplementasikan oleh Java. Bagikan untuk referensi Anda, sebagai berikut:
Kode JSP:
<%@ page language = "java" pageEncoding = "UTF-8"%> <html> <head> <title> Demonstrasi tautan menu sekunder </title> <script type = "text/javascript"> var req; window.onload = function () {// Function Saat halaman memuat} function change_select () {// Panggil fungsi ini ketika opsi kotak drop-down pertama berubah var province = document.geteLementById ('provinsi'). value; var url = "pilih? id ="+ Escape (provinsi); if (window.xmlHttpRequest) {req = new xmlhttpRequest (); } else if (window.activexObject) {req = new ActivexObject ("microsoft.xmlhttp"); } if (req) {req.open ("get", url, true); // Tentukan fungsi panggilan balik ke callback req.onreadystatechange = callback; req.send (null); }} // fungsi panggilan balik fungsi callback () {if (req.readystate == 4) {if (req.status == 200) {parseMessage (); // parse xml dokumen} else {alert ("tidak dapat mendapatkan informasi deskripsi:" + req.statustext); }}} // Parse metode yang mengembalikan fungsi XML parsemessage () {var xmldoc = req.responsexml.documentelement; // Dapatkan dokumen XML yang dikembalikan var xsel = xmldoc.geteLementsbyTagname ('pilih'); // Dapatkan semua tag <colly> di dokumen XML var select_root = document.getElementById ('city'); // Dapatkan kotak drop-down kedua di halaman web select_root.options.length = 0; // Setiap kali Anda mendapatkan data baru, hapus panjang masing-masing dua frame drop-down dengan 0 untuk (var i = 0; i <xsel.length; i ++) {var xvalue = xsel [i] .childnodes [0] .firstchild.nodevalue; // Dapatkan nilai tag pertama di masing -masing tag <Colly>, yaitu nilai tag <value> var xtext = xsel [i] .childnodes [1] .firstchild.nodevalue; // Dapatkan nilai tag kedua di masing -masing tag <Colly>, yaitu nilai opsi <Text> tag var = opsi baru (xtext, xValue); // Buat objek opsi berdasarkan nilai dari setiap set nilai dan tag teks coba {select_root.add (opsi); // tambahkan objek opsi ke kotak drop-down kedua} catch (e) {}}} </script> </head> <bod> <v align = "center"> <bentuk nama = "form1" Method1 "Method =" POST "" POST = "POST =" POINT = "POST =" POST = "POINT =" POST = "TOB ACTER =" <td align = "center"> Contoh tautan sekunder </td> </tr> <tr> <td> <pilih nama = "provinsi" id = "provinsi" onchange = "change_select ()"> <! Menu drop-down pertama> <Opsi Nilai = "0"> Pilih </option> <opsi> <opsi> <opsi> <opsi> <opsi> <opsi> <opsi> <opsi> <opsi> <opsi> <Opsi> <opsi> <opsi> <opsi> <opsi> <opsi> <Option> <Option> <Option- Option = "1"> Opsi </Option> </Option> <Option> <Option nilai = "1"> BEIJING </Option = Option = Option = "1"> Opsi </Option> value="3"> Shandong</option> </select> <select name="city" id="city"> <!Second drop-down menu> <option value="0"> Please select </option> </select> </td> </tr> <tr> <td> </td> <tr> </table> </form> </div> </body></html>Kode Java:
Paket com; impor java.io.ioException; import javax.servlet.servletException; impor javax.servlet.http.httpservlet; import javax.servlet.http.httpservrequest; import javax.servlet.http.httppserve; SelectSerVlet meluas httpservlet {private static final long serialVersionuid = 1l; public selectServlet () {super (); } public void hancur () {super.destroy (); } public void doGet (permintaan httpservletRequest, respons httpservletResponse) melempar servletException, ioException {// response.setcharacterencoding ("gbk"); response.setContentType ("Teks/XML"); response.setheader ("cache-control", "no-cache"); request.setcharacterencoding ("GBK"); response.setcharacterencoding ("UTF-8"); String targetID = request.getParameter ("id"). ToString (); System.out.println (TargetID); // Dapatkan nilai ID parameter dalam string permintaan xml_start = "<sectss>"; String xml_end = "</sects>"; String xml = ""; if (targetId.equalSignorecase ("0")) {xml = "<pilect> <value> 0 </ value> <text> silakan pilih </text> </select>"; } else if (targetId.equalSignorecase ("1")) {xml = "<peclect> <value> 1 </ value> <ext> changping </text> </folly>"; xml += "<peclect> <value> 2 </value> <text> fengtai </text> </dectt>"; xml += "<peclect> <value> 3 </value> <text> haidian </text> </folly>"; xml += "<ceclect> <value> 4 </value> <text> chaoyang </text> </dectt>"; } else if (targetId.equalSignorecase ("2")) {xml = "<peclect> <value> 1 </ value> <text> distrik tanggu </text> </select>"; xml += "<peclect> <value> 2 </value> <text> Hangu distrik </text> </dectt>"; xml += "<peclect> <value> 3 </value> <text> distrik dagang </text> </dect>"; xml += "<peclect> <value> 4 </value> <text> distrik dongli </text> </dectt>"; } else {// Jika 3, karakter berikut dikembalikan xml = "<cilih> <value> 1 </value> <text> jinan </text> </select>"; xml += "<pect> <value> 2 </ value> <text> qingdao </text> </dectt>"; xml += "<peclect> <value> 3 </ value> <text> zibo </text> </folly>"; xml += "<peclect> <value> 4 </value> <ext> zaozhuang </text> </dect>"; } String last_xml = xml_start + xml + xml_end; response.getWriter (). tulis (last_xml); } public void dopost (permintaan httpservletRequest, respons httpservletResponse) melempar servletException, ioException {doGet (permintaan, respons); } public void init () melempar servletException {}}Kode XML:
<? Xml Version = "1.0" encoding = "UTF-8"?> <Web-app Versi = "2.4" xmlns = "http://java.sun.com/xml/ns/j2ee" xmlns: xsi = "http:/www.w33.org/2001 xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"> <servlet> <servlet-name>SelectServlet</servlet-name> <servlet-class>com.SelectServlet</servlet-class> </servlet> <servlet-papping> <servlet-name> SelectSerVlet </servlet-name> <RURL-PATERS>/SELECT </RURL-PATERS> </SERVLET-MAPPing> <creendak-file-list> <creendak-file> index.jsp </welcome-file> </celcome-file-list> </web-pappile>
Untuk konten yang lebih terkait dengan Java, pembaca yang tertarik dengan situs ini dapat melihat topik: "Tutorial Struktur Data Java dan Algoritma", "Ringkasan Java Operation Dom Node Tips", "Ringkasan Tips Operasi Java File dan Direktori" dan "Ringkasan Java Cache Tips"
Saya harap artikel ini akan membantu pemrograman Java semua orang.