ajax異步讀取后臺(tái)傳遞回的下拉選項(xiàng)的值方法
jsp中html相關(guān)代碼
<tr> <td class="tdcell_word2">請(qǐng)選擇展會(huì):</td> <td class="tdcell_word3" colspan="3"> <select name="select" id="jieci" onchange="getChange()"> <option value="">選擇展會(huì)</option> </select> <script Language="JavaScript"> loadjieci('- 選擇展會(huì) -'); </script> <span style="color:red;"> *</span> <span style="font-size:12px;color:red;" id="mesjieci"></span> </td> </tr>
js中相關(guān)代碼
<script Language="JavaScript"> function loadjieci(str) { /** 異步加載屆次 */ $.getJSON("/DictsAction.do?actionType=jieci", function (responseData, status) { if (status != "") { $("#jieci").empty(); $("<option/>").html("- 選擇展會(huì) -").val("- 選擇展會(huì) -").appendTo("#jieci"); $(responseData).each(function (n) { $("<option/>").html(this.name).val(this.code).appendTo("#jieci"); }); //默認(rèn)顯示請(qǐng)選擇 $("#jieci").val(str); } else { alert("屆次加載失?。?); } }); } </script>
struts-config.xml中相關(guān)配置
<!-- ajax異步加載字典 --> <action path="/DictsAction" type="oa.sys016.oagzxxgl.action.DictsAction" scope="request" />
java后臺(tái)代碼
package oa.sys016.oagzxxgl.action; import java.io.PrintWriter; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import net.sf.json.JSONArray; import org.apache.struts.action.Action; import org.apache.struts.action.ActionForm; import org.apache.struts.action.ActionForward; import org.apache.struts.action.ActionMapping; import cn.com.chx.bo.AppBo; /** * 通過(guò)ajax加載屆次選擇下拉列表的選擇項(xiàng) * @author liu * */ public class DictsAction extends Action{ private AppBo appBo = null; @Override public ActionForward execute(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception { // 設(shè)置編碼 response.setContentType("application/json;charset=UTF-8"); response.setCharacterEncoding("UTF-8"); PrintWriter out = response.getWriter(); appBo = new AppBo(); try { // 獲取ActionType String actionType = request.getParameter("actionType"); if (actionType != null && actionType.equals("jieci")) { // 查詢屆次 String jieciJson = getJieciJson(); out.print(jieciJson); } } catch (Exception e) { e.printStackTrace(); } finally { out.close(); } return null; } private String getJieciJson() { // 查詢屆次 List jieciList; try { jieciList = appBo.query("SELECT ID AS CODE,ZH_NAME AS NAME FROM ZH_GZ_INFOX"); List<Map<String, String>> lists = new ArrayList<Map<String, String>>(); if (jieciList.size() > 0) { for (int i = 0; i < jieciList.size(); i++) { Map<String, String> maps = new HashMap<String, String>(); maps.put("code", (String) ((HashMap) jieciList.get(i)).get("CODE")); maps.put("name", (String) ((HashMap) jieciList.get(i)).get("NAME")); lists.add(maps); } } // [{"id":"1","name":"CIMT2015"},{"id":"2","name":"CCMT2016"}] JSONArray json = JSONArray.fromObject(lists); return json.toString(); } catch (Exception e) { e.printStackTrace(); } return null; } }
以上這篇ajax異步讀取后臺(tái)傳遞回的下拉選項(xiàng)的值方法就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
Ajax 上傳圖片并預(yù)覽的簡(jiǎn)單實(shí)現(xiàn)
下面小編就為大家?guī)?lái)一篇Ajax 上傳圖片并預(yù)覽的簡(jiǎn)單實(shí)現(xiàn)。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2016-09-09js與jQuery實(shí)現(xiàn)的兼容多瀏覽器Ajax請(qǐng)求實(shí)例
這篇文章主要介紹了js與jQuery實(shí)現(xiàn)的兼容多瀏覽器Ajax請(qǐng)求,以實(shí)例形式分別講述了采用純js與jQuery實(shí)現(xiàn)的兼容多瀏覽器Ajax請(qǐng)求的方法,并對(duì)Ajax中出現(xiàn)的亂碼問(wèn)題進(jìn)行了一定的分析,需要的朋友可以參考下2014-11-11基于Blod的ajax進(jìn)度條下載實(shí)現(xiàn)示例代碼
本篇文章主要介紹了基于Blod的ajax進(jìn)度條下載實(shí)現(xiàn)示例代碼,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-02-02Ajax 接收服務(wù)器返回的json響應(yīng)方法
今天小編就為大家分享一篇Ajax 接收服務(wù)器返回的json響應(yīng)方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-08-08Ajax傳遞中文參數(shù)到后臺(tái)亂碼的有效解決方法
使用Ajax傳遞中文參數(shù),如果不對(duì)參數(shù)進(jìn)行處理的話,傳到后臺(tái)會(huì)變成亂碼,解決方法很簡(jiǎn)單,需要的朋友可以參考下本文2014-05-05