我已經創建在MySQL中,india_states和india_cities 2個表。從MySQL本身在那裏india_states有4個國家,並在india_cities 我已經插入的值有16點城市的名稱,是指一個國家在馬哈拉施特拉邦表india_states在india_cities表中4個城市。 我已經成功地在使用jquery的我的html頁面中顯示下拉列表中的狀態,下面是各州的代碼。如何根據jquery中其他drowdown列表中的特定項目的選擇來顯示下拉列表?
$(document).ready(function(){
var states_name="";
$.ajax({
type: 'GET',
url: 'http://localhost:8082/JqueryForm/html/jsp/states_name.jsp',
data: { get_param: 'value' },
dataType: 'json',
success: function (data) {
var select = $('#select_states').empty();
$.each(data, function(i) {
states_name = data[i].state_name;
console.log("states_name:" + states_name);
select.append('<option value="'
+ states_name
+ '">'
+ states_name
+ '</option>')
});
}
});
});
現在我想做的事情是,當我選擇馬哈拉施特拉邦,另下拉應該自動顯示與馬哈拉施特拉邦只有4個城市,對於我已經把india_cities表states_id。 我也創建了用於顯示基於以下網址我的JSON視圖城市
http://localhost:8082/JqueryForm/html/jsp/city_names.jsp?states_id=1
{
1: {
city_name: "Mumbai"
},
2: {
city_name: "Pune"
},
3: {
city_name: "Thane"
},
4: {
city_name: "Navi Mumbai"
}
}
這裏是上述
$(document).ready(function(){
$.urlParam = function(name){
var results = new RegExp('[\?&]' + name + '=
([^&#]*)').exec(window.location.href);
if (results==null){
return null;
}
else{
return results[1] || 0;
}
}
var states_id = $.urlParam('states_id');
var cities_name="";
$.ajax({
type: 'GET',
url: 'http://localhost:8082/JqueryForm/html/jsp/city_names.jsp',
data: { states_id: states_id },
dataType: 'json',
success: function (data) {
var select = $('#select_cities').empty();
$.each(data, function(i) {
cities_name = data[i].city_name;
console.log("cities_name:" + cities_name);
select.append('<option value="'
+ cities_name
+ '">'
+ cities_name
+ '</option>')
});
}
});
});
我jQuery代碼JSP頁面
india_states.jsp
<%
JSONObject finalJSON = new JSONObject();
Sql_Server details = new Sql_Server();
request.setCharacterEncoding("utf8");
response.setContentType("application/json");
List<String> list = details.getIndiaStates();
int recordCounter = 1;
JSONArray jArray = new JSONArray();
for (int i = 0; i < list.size(); i++) {
JSONObject formDetailsJson = new JSONObject();
formDetailsJson.put("state_name", list.get(i));
finalJSON.put(recordCounter, formDetailsJson);
++recordCounter;
}
out.println(finalJSON.toString());
%
在地方的states_id
,當我把「1」,它讓我看到馬哈拉施特拉邦的價值,但如何動態獲取states_id? 因此,需要一些幫助來根據第一個下拉列表的值填充我的其他下拉菜單。 謝謝
你需要調用更改狀態下拉列表中的AJAX功能。我的意思是你需要創建一個由Ajax組成的方法,它應該在改變第一個下拉值時被調用。 – 2015-03-31 06:05:33