ドロップダウン メニューにデータを入力しようとしています。2 番目と 3 番目のドロップ ダウン リストには、選択した前のドロップ ダウン値に従ってデータベースから取得した後の値が表示されます。コードドロップダウンで値を選択できません。助けてください。
国.jsp
City.jsp は、state.jsp とほぼ同じです。
私はすでにデータベースに値を追加しています。前もって感謝します
ドロップダウン メニューにデータを入力しようとしています。2 番目と 3 番目のドロップ ダウン リストには、選択した前のドロップ ダウン値に従ってデータベースから取得した後の値が表示されます。コードドロップダウンで値を選択できません。助けてください。
国.jsp
City.jsp は、state.jsp とほぼ同じです。
私はすでにデータベースに値を追加しています。前もって感謝します
JSTL/SQL や jQuery.js などの事前定義されたフレームワークを使用してください
これはうまくいくはずです:
<%--
Document : index
Created on : Jan 23, 2013, 7:43:24 PM
Author : Ankit
--%>
<%@taglib uri="http://java.sun.com/jsp/jstl/sql" prefix="sql"%>
<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<%@page import="java.sql.*"%>
<sql:setDataSource driver="oracle.jdbc.driver.OracleDriver" url="jdbc:oracle:thin:@localhost:1521:XE" user="system" password="ankit" var="db" scope="request" />
<sql:query dataSource="${db}" var="countrys" sql="SELECT * FROM country" />
<sql:query dataSource="${db}" var="states" sql="SELECT * FROM state WHERE countryid=${param['countryid']}" />
<sql:query dataSource="${db}" var="cities" sql="SELECT * FROM city WHERE cityid=${param['cityid']}" />
<!DOCTYPE html>
<html>
<head>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=UTF-8">
<META HTTP-EQUIV="CACHE-CONTROL" CONTENT="NO-CACHE">
<script type="text/javascript" language="javascript" src="jquery.js"></script>
</head>
<body>
<form>
<select name="countryid" id="countrylist" onclick="jQuery('#statelist').load('?countryid='+jQuery(this).val(),'#statelist');">
<c:forEach items="${countrys}" var="country">
<option value="${country.id}">${country.name}</option>
</c:forEach>
</select>
<select name="stateid" id="statelist" onclick="jQuery('#citylist').load('?cityid='+jQuery(this).val(),'#citylist');">
<c:forEach items="${states}" var="state">
<option value="${state.id}">${state.name}</option>
</c:forEach>
</select>
<select name="cityid" id="citylist">
<c:forEach items="${cities}" var="city">
<option value="${city.id}">${city.name}</option>
</c:forEach>
</select>
<button>Finish</button>
</form>
</body>
</html>