jquery動態(tài)加載select下拉框示例代碼
更新時間:2013年12月10日 17:18:40 作者:
動態(tài)加載select下拉框的實現(xiàn)方法有很多,在接下來的文章中為大家介紹下jquery是如何實現(xiàn)的
如題,直接上代碼,實戰(zhàn)學(xué)習(xí)。
<head><title>jquery實現(xiàn)動態(tài)加載select下拉選項</title>
<script type="text/javascript">
function init(){
makemoduleSelect();
}
//加載模板下拉框選項
function makemoduleSelect(){
$.ajax({
url : 'indexStatisticsAction_getSelect.jsp',
data: { page:'clientindexStatistics.jsp',method:'get_modtitlecode'},
success : function(result){
$("#makemodule").append(result);
}
});
}</script>
</head>
<body onload="init()">
下拉框<select name="makemodule" id="makemodule" style='width:130px' onchange='makemoduleSelected()'>
<option> ------- </option>
</select></body>
以上html被加載時,由于body標(biāo)簽里面設(shè)置了onload屬性,則其對應(yīng)的javascript函數(shù)會運行,最后到 function makemoduleSelect(),再來看看這個函數(shù):
url屬性,類似于AJAX的跳轉(zhuǎn)url,這里我用了同一個路徑下的jsp頁面(indexStatisticsAction_getSelect.jsp),下面會再展示;
data屬性,將作為請求的參數(shù),由request獲??;
success屬性,表示該jquery的ajax請求成功返回后將執(zhí)行的代碼,這里的$("#makemodule")指的是下拉框。
下面是ajax請求的url所對應(yīng)的jsp,這里刪掉了JDBC相關(guān)的包,自行引入嘛,JDBC的就不多說了,根據(jù)需要把業(yè)務(wù)邏輯碼出來吧。
<%@ page import="java.util.*"%>
<%@ page import="java.sql.ResultSet"%>
<%@ page import="java.io.PrintWriter"%>
<%
String userId = (String) session.getAttribute("userid");
String method = request.getParameter("method");
String fromPage = request.getParameter("page");
String sql1 = "select modtitlename,modtitlecode from makemodule where userid = '?userId?' and modulename_en='?modulename_en?' group by modtitlename ";
System.out.println("---getting select_option from:"+fromPage+"----" + new Date());
//獲取模板選項
if(method.equals("get_modtitlecode")){
String sql = sql1.replace("?userId?",userId);
if(fromPage.equals("acindexStatistics.jsp")){
sql = sql.replace("?modulename_en?","acsta");
}else if(fromPage.equals("apindexStatistics.jsp")){
sql = sql.replace("?modulename_en?","apsta");
}else if(fromPage.equals("clientindexStatistics.jsp")){
sql = sql.replace("?modulename_en?","terminalsta");
}
System.out.println(sql);
StringBuffer rsOption = new StringBuffer();
Db db = new Db();
try {
db.prepareQuery();
ResultSet rs = db.executeQuery(sql);
while (rs!=null && rs.next()) {
rsOption.append("<option value='"+rs.getString("modtitlecode")+"'>"+StringOperator.ISO2GB(rs.getString("modtitlename"))+"</option>");
}
rs.close();
} catch (Exception e) {
e.printStackTrace();
} finally {
db.endQuery();
}
PrintWriter pout = response.getWriter();
pout.write(rsOption.toString());
pout.flush();
pout.close();
}
%>
上面的sql語句將取出兩個值,分別為select下拉框的顯示值和真值,套個<option>標(biāo)簽回發(fā)就可以了。
復(fù)制代碼 代碼如下:
<head><title>jquery實現(xiàn)動態(tài)加載select下拉選項</title>
<script type="text/javascript">
function init(){
makemoduleSelect();
}
//加載模板下拉框選項
function makemoduleSelect(){
$.ajax({
url : 'indexStatisticsAction_getSelect.jsp',
data: { page:'clientindexStatistics.jsp',method:'get_modtitlecode'},
success : function(result){
$("#makemodule").append(result);
}
});
}</script>
</head>
<body onload="init()">
下拉框<select name="makemodule" id="makemodule" style='width:130px' onchange='makemoduleSelected()'>
<option> ------- </option>
</select></body>
以上html被加載時,由于body標(biāo)簽里面設(shè)置了onload屬性,則其對應(yīng)的javascript函數(shù)會運行,最后到 function makemoduleSelect(),再來看看這個函數(shù):
url屬性,類似于AJAX的跳轉(zhuǎn)url,這里我用了同一個路徑下的jsp頁面(indexStatisticsAction_getSelect.jsp),下面會再展示;
data屬性,將作為請求的參數(shù),由request獲??;
success屬性,表示該jquery的ajax請求成功返回后將執(zhí)行的代碼,這里的$("#makemodule")指的是下拉框。
下面是ajax請求的url所對應(yīng)的jsp,這里刪掉了JDBC相關(guān)的包,自行引入嘛,JDBC的就不多說了,根據(jù)需要把業(yè)務(wù)邏輯碼出來吧。
復(fù)制代碼 代碼如下:
<%@ page import="java.util.*"%>
<%@ page import="java.sql.ResultSet"%>
<%@ page import="java.io.PrintWriter"%>
<%
String userId = (String) session.getAttribute("userid");
String method = request.getParameter("method");
String fromPage = request.getParameter("page");
String sql1 = "select modtitlename,modtitlecode from makemodule where userid = '?userId?' and modulename_en='?modulename_en?' group by modtitlename ";
System.out.println("---getting select_option from:"+fromPage+"----" + new Date());
//獲取模板選項
if(method.equals("get_modtitlecode")){
String sql = sql1.replace("?userId?",userId);
if(fromPage.equals("acindexStatistics.jsp")){
sql = sql.replace("?modulename_en?","acsta");
}else if(fromPage.equals("apindexStatistics.jsp")){
sql = sql.replace("?modulename_en?","apsta");
}else if(fromPage.equals("clientindexStatistics.jsp")){
sql = sql.replace("?modulename_en?","terminalsta");
}
System.out.println(sql);
StringBuffer rsOption = new StringBuffer();
Db db = new Db();
try {
db.prepareQuery();
ResultSet rs = db.executeQuery(sql);
while (rs!=null && rs.next()) {
rsOption.append("<option value='"+rs.getString("modtitlecode")+"'>"+StringOperator.ISO2GB(rs.getString("modtitlename"))+"</option>");
}
rs.close();
} catch (Exception e) {
e.printStackTrace();
} finally {
db.endQuery();
}
PrintWriter pout = response.getWriter();
pout.write(rsOption.toString());
pout.flush();
pout.close();
}
%>
上面的sql語句將取出兩個值,分別為select下拉框的顯示值和真值,套個<option>標(biāo)簽回發(fā)就可以了。
您可能感興趣的文章:
- jQuery操作select下拉框的text值和value值的方法
- jquery multiSelect 多選下拉框
- 基于jQuery的select下拉框選擇觸發(fā)事件實例分析
- jquery及原生js獲取select下拉框選中的值示例
- jquery獲得下拉框值的代碼
- jQuery+easyui中的combobox實現(xiàn)下拉框特效
- Jquery操作下拉框(DropDownList)實現(xiàn)取值賦值
- jQuery實現(xiàn)監(jiān)聽下拉框選中內(nèi)容發(fā)生改變操作示例
- JQuery實現(xiàn)級聯(lián)下拉框效果實例講解
- jquery實現(xiàn)戶籍地選擇下拉框
相關(guān)文章
picLazyLoad 實現(xiàn)圖片延時加載(包含背景圖片)
下面小編就為大家?guī)硪黄猵icLazyLoad 實現(xiàn)圖片延時加載(包含背景圖片)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2016-07-07
如何確保JavaScript的執(zhí)行順序 之jQuery.html并非萬能鑰匙
在上一篇文章《如何確保JavaScript的執(zhí)行順序 - 之jQuery.html深度分析》中,我們揭示了jQuery.html函數(shù)之所以能在各種瀏覽器下保持動態(tài)JS順序執(zhí)行,其秘密在于 – 同步AJAX獲取外部JavaScript。2011-03-03
基于jquery實現(xiàn)狀態(tài)限定編輯的代碼
基于jquery實現(xiàn)狀態(tài)限定編輯的代碼,需要的朋友可以參考下2012-02-02
基于jQuery Bar Indicator 插件實現(xiàn)進度條展示效果
這篇文章主要介紹了基于jQuery Bar Indicator 插件實現(xiàn)進度條展示效果的相關(guān)資料,需要的朋友可以參考下2015-09-09
JQuery學(xué)習(xí)筆記 實現(xiàn)圖片翻轉(zhuǎn)效果和TAB標(biāo)簽切換效果
為了保證前臺頁面的整潔,我們習(xí)慣性地將CSS放入一個單獨的.CSS文件中以便調(diào)用,而JS也同樣可以放到單獨的JS文件中去,并且頁面上的事件如onclick,onmouseover也可以分離出來,現(xiàn)在網(wǎng)上比較流行JQuery2008-11-11
jquery實現(xiàn)點擊文字可編輯并修改保存至數(shù)據(jù)庫
網(wǎng)上的方法只有點擊文字編輯并保持,但是沒有完整的代碼寫怎么保存到數(shù)據(jù)庫,本例用一條sql語句保存到數(shù)據(jù)庫2014-04-04
擴展jQuery對象時如何擴展成員變量具體怎么實現(xiàn)
這篇文章主要介紹了擴展jQuery對象時如何擴展成員變量,需要的朋友可以參考下2014-04-04
jQuery實現(xiàn)隔行變色的方法分析(對比原生JS)
這篇文章主要介紹了jQuery實現(xiàn)隔行變色的方法,結(jié)合實例形式對比原生JS實現(xiàn)隔行變色的相關(guān)技巧,給出了2種jQuery實現(xiàn)隔行變色的方法,需要的朋友可以參考下2016-11-11

