`
huaerfan
  • 浏览: 11821 次
  • 性别: Icon_minigender_1
  • 来自: 北京
最近访客 更多访客>>
社区版块
存档分类
最新评论

struts2应用json返回列表,js处理

阅读更多
今天写程序,用到了ajax,json。
具体的功能如下:
选择一个工程师组,根据其ID通过AJAX方式查询组中的工程师,返回工程师(id,name)列表,遍历此列表,在一个div中以checkbox的形式展示组中的工程师,以供多选。
为了方便,我首先想到了使用json的形式返回数据,之前就对json很崇拜,不过一直没有机会使用。呵呵,下面就具体的写一下过程及个人认为应注意的地方,如有错误或更好的改进方法,还请提出,谢谢。
1,环境:struts2 + jquery + json
2,jar,主要是json的jar包,jsonplugin-0.34.jar,其他的struts2就不说了
3,实现:
js部分略(其实就是jquery的普通写法)

struts2的action实现部分
private List<Engineer> engineerList;
public void setEngineerList(List<Engineer> engineerList){
     this.engineerList = engineerList;
}

public List<Engineer> getEngineerList(){
     return this.engineerList;
}
public String queryEngineersByGroupId(){
    //通过service方法查询出工程师列表(queryList),并放入engineerList中
     this.setEngineerList(queryList);   
     return SUCCESS; 
}


struts2 xml配置部分
<package name="jsonpackage" extends="json-default" namespace="/json">
    <action name="queryEngineersByGroupId" 
            class="actionTest" 
            method="queryEngineersByGroupId">
       <result type="json">
          <param name="includeProperties">
               engineerList\[\d+\]\.id,
               engineerList\[\d+\]\.name
          </param>
       </result>
   </action>
</package>


js回调函数部分
function queryEngineersByGroupIdCallBack(data){
    var engineers = eval( "(" + data + ")" );
    var len = engineers.engineerList.length;
    for(var i = 0 ; i < len ; i ++){
       $("#divId").append("<input type='checkbox'
                           name='engineerchk' value='" 
                          + engineers.engineerList[i].id
                          + "'/>"
                          + engineer.engineerList[i].name);
    }
}


注:红色部分是我认为需要主要的地方。
1
2
分享到:
评论

相关推荐

    java开源包2

    JArgs 是一个 Java 语言用来处理应用程序的命令行参数的类库。 高性能内存消息和事件驱动库 Chronicle Chronicle 是一个超低延迟、高吞吐、持久化的消息和事件驱动的内存数据库,延迟只有16纳秒以及支持每秒钟 500-...

    java开源包1

    JArgs 是一个 Java 语言用来处理应用程序的命令行参数的类库。 高性能内存消息和事件驱动库 Chronicle Chronicle 是一个超低延迟、高吞吐、持久化的消息和事件驱动的内存数据库,延迟只有16纳秒以及支持每秒钟 500-...

    java开源包11

    JArgs 是一个 Java 语言用来处理应用程序的命令行参数的类库。 高性能内存消息和事件驱动库 Chronicle Chronicle 是一个超低延迟、高吞吐、持久化的消息和事件驱动的内存数据库,延迟只有16纳秒以及支持每秒钟 500-...

    java开源包3

    JArgs 是一个 Java 语言用来处理应用程序的命令行参数的类库。 高性能内存消息和事件驱动库 Chronicle Chronicle 是一个超低延迟、高吞吐、持久化的消息和事件驱动的内存数据库,延迟只有16纳秒以及支持每秒钟 500-...

    java开源包6

    JArgs 是一个 Java 语言用来处理应用程序的命令行参数的类库。 高性能内存消息和事件驱动库 Chronicle Chronicle 是一个超低延迟、高吞吐、持久化的消息和事件驱动的内存数据库,延迟只有16纳秒以及支持每秒钟 500-...

    java开源包5

    JArgs 是一个 Java 语言用来处理应用程序的命令行参数的类库。 高性能内存消息和事件驱动库 Chronicle Chronicle 是一个超低延迟、高吞吐、持久化的消息和事件驱动的内存数据库,延迟只有16纳秒以及支持每秒钟 500-...

    java开源包10

    JArgs 是一个 Java 语言用来处理应用程序的命令行参数的类库。 高性能内存消息和事件驱动库 Chronicle Chronicle 是一个超低延迟、高吞吐、持久化的消息和事件驱动的内存数据库,延迟只有16纳秒以及支持每秒钟 500-...

    java开源包4

    JArgs 是一个 Java 语言用来处理应用程序的命令行参数的类库。 高性能内存消息和事件驱动库 Chronicle Chronicle 是一个超低延迟、高吞吐、持久化的消息和事件驱动的内存数据库,延迟只有16纳秒以及支持每秒钟 500-...

    java开源包8

    JArgs 是一个 Java 语言用来处理应用程序的命令行参数的类库。 高性能内存消息和事件驱动库 Chronicle Chronicle 是一个超低延迟、高吞吐、持久化的消息和事件驱动的内存数据库,延迟只有16纳秒以及支持每秒钟 500-...

    java开源包7

    JArgs 是一个 Java 语言用来处理应用程序的命令行参数的类库。 高性能内存消息和事件驱动库 Chronicle Chronicle 是一个超低延迟、高吞吐、持久化的消息和事件驱动的内存数据库,延迟只有16纳秒以及支持每秒钟 500-...

    java开源包9

    JArgs 是一个 Java 语言用来处理应用程序的命令行参数的类库。 高性能内存消息和事件驱动库 Chronicle Chronicle 是一个超低延迟、高吞吐、持久化的消息和事件驱动的内存数据库,延迟只有16纳秒以及支持每秒钟 500-...

    java开源包101

    JArgs 是一个 Java 语言用来处理应用程序的命令行参数的类库。 高性能内存消息和事件驱动库 Chronicle Chronicle 是一个超低延迟、高吞吐、持久化的消息和事件驱动的内存数据库,延迟只有16纳秒以及支持每秒钟 500-...

    Java资源包01

    JArgs 是一个 Java 语言用来处理应用程序的命令行参数的类库。 高性能内存消息和事件驱动库 Chronicle Chronicle 是一个超低延迟、高吞吐、持久化的消息和事件驱动的内存数据库,延迟只有16纳秒以及支持每秒钟 500-...

    java+mysql实现的代码分享网(所有源码已开源,效果可看网址:www.admintwo.com)

    通用json处理功能(向方法中传递任何参数,int、string等,都会返回json数据,而且速度很快)。分词功能(点击某一个分享,进入详情页的时候,会对该分享名称进行分词,并且加入到head中,利于网站seo)。 可能还有...

    JAVA上百实例源码以及开源项目源代码

    5个目标文件,演示Address EJB的实现,创建一个EJB测试客户端,得到名字上下文,查询jndi名,通过强制转型得到Home接口,getInitialContext()函数返回一个经过初始化的上下文,用client的getHome()函数调用Home接口...

    JAVA上百实例源码以及开源项目

    内容索引:JAVA源码,综合应用,J2me游戏,PNG,图形处理  这是个J2ME控制台程序,它能剔除PNG文件中的非关键数据段,减少文件大小从而达到压缩图片的目的。而图片的质量并不会受到损失。使用时候只需在控制台窗口执行...

Global site tag (gtag.js) - Google Analytics