解決Jquery下拉框數(shù)據(jù)動態(tài)獲取的問題
更新時間:2018年01月25日 10:02:12 作者:一槍盡騷丶魂
下面小編就為大家分享一篇解決Jquery下拉框數(shù)據(jù)動態(tài)獲取的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
廢話不多說,直接上源碼:
select.jsp
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>" rel="external nofollow" >
<title>My JSP 'select.jsp' starting page</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<!--
<link rel="stylesheet" type="text/css" href="styles.css" rel="external nofollow" >
-->
<script type="text/javascript" src="js/jquery-2.1.1.min.js" charset="utf-8"></script>
<script type="text/javascript">
function get_app_type() {
$.ajax({
type: "post",
url: "AppTypeShow.action", //獲取json數(shù)據(jù)
dataType: "json",
success: function(data) {
var d = eval("(" + data + ")");
for(var i = 0; i < d.length; i++) {
var id = d[i].id;
var name = d[i].name;
var opt = "<option value='" + id + "'>" + name + "</option>";
$("#appType").append(opt);
}
},
error: function() {
alert("系統(tǒng)異常,請稍后再試!")
}
});
}
function get_app_class() {
$.ajax({
type: "post",
url: "AppClassShow.action",
dataType: "json",
success: function(data) {
var d = eval("(" + data + ")");
for(var i = 0; i < d.length; i++) {
var id = d[i].id;
var name = d[i].name;
var opt = "<option value='" + id + "'>" + name + "</option>";
$("#appClass").append(opt);
}
},
error: function() {
alert("系統(tǒng)異常,請稍后再試!")
}
});
}
$(document).ready(function() {
get_app_type();
get_app_class();
});
</script>
</head>
<body>
<table>
<tr>
<td align="right">APP類型:</td>
<td align="left">
<select name="appType" id="appType"
style="margin-left: 16px; height: 30px; width: 110px; text-align: left; size: 3; color: #505050;">
<option value="-1">---請選擇---</option>
</select>
</td>
</tr>
<tr height="25px"><td> </td></tr>
<tr>
<td align="right">APP種類:</td>
<td align="left">
<select name="appClass" id="appClass"
style="margin-left: 16px; height: 30px; width: 110px; text-align: left; size: 3; color: #505050;">
<option value="-1">---請選擇---</option>
</select>
</td>
</tr>
</table>
</body>
</html>
struts.xml
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.1//EN" "http://struts.apache.org/dtds/struts-2.1.dtd">
<struts>
<constant name="struts.i18n.encoding" value="UTF-8"></constant>
<package name="simpleton" extends="struts-default,json-default">
<action name="*JsonAction" method="{1}"
class="jquery.chisj.action.JsonAction">
<result name="fail">error.jsp</result>
<result type="json">
<param name="root">result</param>
</result>
</action>
<action name="AppTypeShow"
class="jquery.chisj.action.NtAppAction"
method="appTypeShow">
<result name="fail">error.jsp</result>
<result type="json">
<param name="root">result</param>
</result>
</action>
<action name="AppClassShow"
class="jquery.chisj.action.NtAppAction"
method="appClassShow">
<result name="fail">error.jsp</result>
<result type="json">
<param name="root">result</param>
</result>
</action>
</package>
</struts>
NtAppAction.java
/**
*
*/
package jquery.chisj.action;
import java.util.ArrayList;
import java.util.List;
import jquery.chisj.entity.APPClass;
import jquery.chisj.entity.APPType;
import com.opensymphony.xwork2.ActionSupport;
import net.sf.json.JSONArray;
/**
* @ClassName: NtAppAction
* @Description: TODO
* @Author: chisj chisj@foxmail.com
* @Date 2016年1月20日 下午4:53:50
*
*/
public class NtAppAction extends ActionSupport {
private String result;
public String appTypeShow() {
System.out.println("---app type show---");
List<APPType> appTypeList = new ArrayList<APPType>();
try {
APPType appType_1 = new APPType();
APPType appType_2 = new APPType();
appType_1.setId(Short.valueOf("1"));
appType_1.setName("Android");
appType_2.setId(Short.valueOf("2"));
appType_2.setName("iOS");
appTypeList.add(appType_1);
appTypeList.add(appType_2);
JSONArray jsonArray = JSONArray.fromObject(appTypeList);
result = String.valueOf(jsonArray);
} catch (Exception e) {
e.printStackTrace();
}
return SUCCESS;
}
public String appClassShow() {
System.out.println("---app class show---");
List<APPClass> appClassList = new ArrayList<APPClass>();
try {
APPClass appClass_1 = new APPClass();
APPClass appClass_2 = new APPClass();
appClass_1.setId(Short.valueOf("1"));
appClass_1.setName("種類1");
appClass_2.setId(Short.valueOf("2"));
appClass_2.setName("種類2");
appClassList.add(appClass_1);
appClassList.add(appClass_2);
JSONArray jsonArray = JSONArray.fromObject(appClassList);
result = String.valueOf(jsonArray);
} catch (Exception e) {
e.printStackTrace();
}
return SUCCESS;
}
public String getResult() {
return result;
}
public void setResult(String result) {
this.result = result;
}
}
以上這篇解決Jquery下拉框數(shù)據(jù)動態(tài)獲取的問題就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
jQuery.form.js插件不能解決連接超時(timeout)的原因分析及解決方法
jQuery.form.js是一個form插件,支持ajax表單提交和ajax文件上傳。最近在使用jquery.form.js提交包含文件的表單時,當碰上網(wǎng)速較慢時,而我們又設置了timeout時我們的頁面會死在這里,怎么回事呢,下面腳本之家小編給大家解答下2016-10-10
使用Jquery獲取Thymeleaf參數(shù)的三種方式小結
在使用Thymeleaf進行數(shù)據(jù)填充的時候,發(fā)現(xiàn)使用jquery原始方式獲取內(nèi)容參數(shù)發(fā)現(xiàn)拿不到數(shù)據(jù),本文主要介紹了使用Jquery獲取Thymeleaf參數(shù)的三種方式小結,感興趣的可以了解一下2024-07-07
通過pjax實現(xiàn)無刷新翻頁(兼容新版jquery)
這篇文章主要介紹了通過pjax實現(xiàn)無刷新翻頁,兼容新版jquery,使用心得方法,需要的朋友可以參考下2014-01-01
jQuery EasyUI API 中文文檔 - Panel面板
jQuery EasyUI API 中文文檔 - Panel面板,使用jQuery EasyUI的朋友可以參考下。2011-09-09

