SSH整合中strtus2问题
本人刚学习java不久,昨天做ssh整合遇到了个奇葩问题。
做一个显示管理员列表界面的时候,管理员(admin)和角色(role)为多对多关系
有一个功能要根据角色名称查询所有的管理员列表,我将搜索的名称jsp界面和Action属性定义为checkName
结果每次点击分页gopageAction(page),角色搜索框就会莫名其妙的出现一个逗号,而地址栏里的请求参数却没有逗号。
为什么角色搜索框会莫名其妙的多处一个","啊啊????求大虾帮忙解决啊!!!
JSP界面相关代码
搜索框
<div>角色:<input type="text" class="text_search width200" name="checkName" value="${checkName}"/></div> <div><input type="submit" value="搜索" class="btn_search" /></div>
js代码分页 goPageAction(page)
function goPageAction(page){ document.getElementById("formId").action = "adminList.action?page="+page+"&checkName=${checkName}"; document.getElementById("formId").submit(); }
显示角色列表的Action
package com.tarena.netctoss.action.admin; import java.util.HashSet; import java.util.List; import java.util.Set; import javax.annotation.Resource; import org.springframework.context.annotation.Scope; import org.springframework.stereotype.Controller; import com.tarena.netctoss.action.bean.BaseAction; import com.tarena.netctoss.dao.IAdminDao; import com.tarena.netctoss.dao.IRoleDao; import com.tarena.netctoss.pojo.Admin; import com.tarena.netctoss.pojo.Role; @Controller @Scope("prototype") public class AdminListAction extends BaseAction{ //用于搜索的角色名 private String checkName; private List<Admin> admins; private int page=1; private int pageSize; private int totalPage; @Resource private IAdminDao adminDao; @Resource private IRoleDao roleDao; public String execute(){ System.out.println("checkName:"+checkName); Integer[] ids = null; try { //如果搜索条件checkName不为空 if(checkName!=null){ Set<Integer> set = new HashSet<Integer>(); //根据角色名查找角色 List<Role> roles = roleDao.findByName(checkName.trim()); //若果没有找到角色直接返回 if(roles.isEmpty()||roles == null){ return "success"; }else{//若果找到了获取对应的管理员ids for(Role role : roles){ for(Admin a : role.getAdmins()){ set.add(a.getId()); } } ids = set.toArray(new Integer[set.size()]); } } admins = adminDao. findBypage(page, pageSize, ids); totalPage = adminDao.getTotalpage(pageSize,ids); } catch (Exception e) { e.printStackTrace(); } return "success"; } public List<Admin> getAdmins() { return admins; } public void setAdmins(List<Admin> admins) { this.admins = admins; } public int getPage() { return page; } public void setPage(int page) { this.page = page; } public int getPageSize() { return pageSize; } public void setPageSize(int pageSize) { this.pageSize = pageSize; } public int getTotalPage() { return totalPage; } public void setTotalPage(int totalPage) { this.totalPage = totalPage; } public String getCheckName() { return checkName; } public void setCheckName(String checkName) { this.checkName = checkName; } }
AdminListAction的checkName输出结果
checkName:,
地址栏(没有逗号)
http://127.0.0.1:8080/spring10/admin/adminList.action?page=2&checkName=
界面的搜索框(有逗号)
,
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
document.getElementById("formId")这个里面的Id怎么没有贴出来啊!