当前位置: 代码迷 >> Ajax >> ssh+jquery求指教。
  详细解决方案

ssh+jquery求指教。

热度:338   发布时间:2012-05-03 14:06:56.0
ssh+jquery求指教。。。。急急急,在线等。。。
后台action已经能够分页,只是却前台控制分页的参数,请问怎么从前台用jquery将所需参数传到action中?必须使用jquery。。。。

------------------------------------------------------


public class BookListAction extends BaseAction {

private BookListService bookListService;
private List<Book> booklist;
private Pageination p=new Pageination();

public String gotoBookList(){
logger.info("action--gotoBookList");
//booklist=bookListService.listAllBooks();//不带分页的列表
//int page=Integer.parseInt(servletRequest.getParameter("page"));
//logger.info("---page"+page);
//int pageSize=Integer.parseInt(servletRequest.getParameter("pageSize"));
  //logger.info("---pageSize"+pageSize);
p.setPage(1);
p.setPageSize(3);

booklist=bookListService.listAllBooksWithPage(p);//带分页的列表
logger.info("booklist.size:"+booklist.size());


return SUCCESS;
}

public List<Book> getBooklist() {
return booklist;
}

public void setBooklist(List<Book> booklist) {
this.booklist = booklist;
}

public BookListService getBookListService() {
return bookListService;
}

public void setBookListService(BookListService bookListService) {
this.bookListService = bookListService;
}

public Pageination getP() {
return p;
}

public void setP(Pageination p) {
this.p = p;
}



}

前台:
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@taglib prefix="s" uri="/struts-tags" %>



<html>
<script type="text/javascript" src="jquery-1.4.4.min.js"></script>
<script type="text/javascript">

//此处添加jquery控制分页代码
</script>
<body>
<div>
<s:iterator value="%{booklist}">
书名:<s:property value="bookname"/>
出版时间:<s:property value="publishtime"/>
数量:<s:property value="booknumber"/><br>
</s:iterator>
</div>

<a href="#" onclick="" >首页</a>
<a href="#" onclick="" >上一页</a>
<a href="#" onclick="" >下一页</a>
<a href="#" onclick="" >尾页</a>

</body>
</html>


运行结果:
书名:book1 出版时间:2012-04-22 14:06:28 数量:2
书名:book2 出版时间:2012-04-24 14:06:28 数量:101
书名:book3 出版时间:2012-03-20 14:06:28 数量:1020
首页 上一页 下一页 尾页



------解决方案--------------------
传递页数和每页大小到后台
------解决方案--------------------
楼主,你私信和我回复我帖这里吧
zhenchuang99
请教一个问题,比如我们现有ssh框架后台,一个列表已经能够取出,前台使用struts标签列出数据,但还需从前台取得分页参数:当前页和分页大小两个参数,这两个参数肯定要点击按钮或连接异步刷新的,在前台能用jquery+ajax对后台action进行对分页参数的传递么?前台该怎么传,后台action该怎么接呢?对jquery不熟悉。

jquery+ajax的post方法不明白,网上说传json的参数,但在后台action里该怎么接。。。真是不明白。。

希望能给与指点,谢谢。

----我回复----------------------------------
你说的SSH是什么我都不懂,我后台用asp.net 或者asp,php,

jquery+ajax 的post,和你直接用form,手动post过去没什么两样,都是传名值对集合过去。

得到的返回结果也没什么两样的,完全都是纯文本。

你后台随便怎么处理,理论上和前台用什么完全没关系。

当然,为了节约前台的处理,有时候常常把生成的字符串直接格式化为json形式,但这不是必须的。



------解决方案--------------------
JScript code
 
//这是我的一个代码示例  ,实现的是在弹出中修改,然后直接显示页面上      
$.ajax({ 
      type: "POST",   
//参数这里可以直接传递                      url: "<eaglelink:contextpath/>/html/lablemanager/lables!update.action?id="+id
                              + "&lablestype=" 
                              + lablestype
                              + "&lablename="
                              +encodeURI(encodeURI(lablename))
                              + "&labledesc="
                              + encodeURI(encodeURI(labledesc))
                              ,
                      async: false ,   
                      success: function(data){    
                     if(data!=""){  
                         toShow(data);
                         document.getElementById("updateLable").style.display="none";
                    }else{   
                         document.getElementById("updateLable").style.display="block";
                         alert("修改信息失败!");
                    }   
                   }          
                });
 
  相关解决方案