dijit.form.Select菜单项的数据通过rest加载
2013-06-04 18:51
337 查看
添加rest服务所需jar包
略过web.xml文件配置
<?xml version="1.0" encoding="UTF-8"?> <web-app id="WebApp_ID" version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"> <display-name>Dojo-test</display-name> <context-param> <param-name>resteasy.servlet.mapping.prefix</param-name> <param-value>/rest</param-value> </context-param> <context-param> <param-name>resteasy.scan</param-name> <param-value>true</param-value> </context-param> <listener> <listener-class>org.jboss.resteasy.plugins.server.servlet.ResteasyBootstrap</listener-class> </listener> <servlet> <servlet-name>Resteasy</servlet-name> <servlet-class>org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher</servlet-class> </servlet> <servlet-mapping> <servlet-name>Resteasy</servlet-name> <url-pattern>/rest/*</url-pattern> </servlet-mapping> <welcome-file-list> <welcome-file>index.html</welcome-file> <welcome-file>index.htm</welcome-file> <welcome-file>index.jsp</welcome-file> </welcome-file-list> </web-app>
编写测试类
import javax.servlet.http.HttpServletRequest; import javax.ws.rs.Consumes; import javax.ws.rs.GET; import javax.ws.rs.Path; import javax.ws.rs.Produces; import javax.ws.rs.core.Context; import javax.ws.rs.core.MediaType; @Path("/echo") public class Echo { @GET @Path("/getDistrict") //@Consumes(MediaType.APPLICATION_FORM_URLENCODED) //@Produces("application/json") public District[] getDistrict(){ District[] arrD = new District[7]; District d = new District(); d.id = "jn"; d.name = "济南"; arrD[0] = d; d = new District(); d.id = "qd"; d.name = "青岛"; arrD[1] = d; d = new District(); d.id = "zb"; d.name = "淄博"; arrD[2] = d; d = new District(); d.id = "zz"; d.name = "枣庄"; arrD[3] = d; d = new District(); d.id = "dy"; d.name = "东营"; arrD[4] = d; d = new District(); d.id = "yt"; d.name = "烟台"; arrD[5] = d; d = new District(); d.id = "jng"; d.name = "济宁"; arrD[6] = d; return arrD; } class District{ public String id ; public String name; } }
dojo页面
第一种加载方式,编程:
require([ "dojo/store/JsonRest", "dijit/Tree", "dijit/tree/ObjectStoreModel", "dojo/domReady!", "dijit/form/Select", "dijit/form/FilteringSelect", "dojox/data/JsonRestStore", "dojo/data/ObjectStore" ], function(){ var objectStore = new dojo.store.JsonRest({ target: "/dojo/rest/echo/getDistrict" }); var dataStore = new dojo.data.ObjectStore({objectStore: objectStore}); var dt = new dijit.form.Select({ store: dataStore, labelAttr:'name' }, "dtSelect"); dt.startup(); });
<div id = "dtSelect"></div>
第二种加载方式,声明:
<div data-dojo-type="dojo/store/JsonRest" data-dojo-id="restData" data-dojo-props='target: "/dojo/rest/echo/getDistrict"'></div> <div data-dojo-type="dojo/data/ObjectStore" data-dojo-id="restStore" data-dojo-props="objectStore: restData"></div> <div data-dojo-id="corpSelect" data-dojo-type="dijit/form/Select" data-dojo-props='store: restStore, labelAttr:"name"'></div>
相关文章推荐
- 动态为 dijit.form.FilteringSelect 加载数据
- 通过ARCGIS for Javascript api 加载数据 ,并显示在dojo的FilteringSelect上
- Layui Layer在open弹出层中异步加载数据和form表单radio、checkbox、select不渲染,不可点击的解决办法
- layui监听select下拉框获取数据通过doT.js加载页面多选框
- easyui关于解决tab添加的页面通过href加载数据内容的页面刷新后form表单重复提交的问题;
- WebAPI通过multipart/form-data方式同时上传文件以及数据(含HttpClient上传Demo)
- 通过Load table命令将数据文件加载到Sybase IQ数据库里面的Python脚本
- bootstrap selectpicker 动态加载数据
- form表单通过hidden向后台传递请求数据
- WebAPI通过multipart/form-data方式同时上传文件以及数据(含HttpClient上传Demo)
- RESTEasy通过TEXT、XML、JSON进行数据交换
- 通过ApplicationContext.getBean(beanName)动态加载数据。
- 不通过getElementByName实现获取表单数据 (document.form表单的name值.input输入框的name值)
- 纯js实现分页 原理:所有数据已加载好 js通过遍历部分显示 实现分页效果
- 解决bootstrap-select 动态加载数据不显示的问题
- 解决chosen-select动态加载数据不生效的问题
- Excel POI通过模版的方式加载数据
- Multipart/form-data POST文件上传详解 理论 简单的HTTP POST 大家通过HTTP向服务器发送POST请求提交数据,都是通过form表单提交的,代码如下: <form me
- form表单通过GET提交的数据自动生成的链接地址如何伪静态化处理
- form表单的提交与加载数据详解