layer页面跳转,获取html子节点元素的值方法
1、jsp页面,携带值跳转到新页original.jsp
varbtnClick={'click.shownewPage':function(e,value,row,index){//点击按钮时触发时间
varId=row.Id;
layer.open({
title:'跳转到新页',
type:2,
content:'/switch/switchAction!getNewPage.do?Id='+Id,//struts配置文件指定的跳转路径
area:['970px','610px'],
shadeClose:true//点击遮罩关闭
});
}};
2、后台跳转类SwitchAction.java
@Scope(value="prototype")
@Controller("SwitchAction")
publicclassSwitchActionimplementsServletRequestAware,ServletResponseAware,ModelDriven{
protectedHttpServletRequestrequest;
protectedHttpServletResponseresponse;
publicStringgetNewPage(){
StringId=request.getParameter("Id");//获取传递的参数
request.setAttribute("Id",Id);//设置属性值,传递参数
return"newPage";//struts配置文件中跳转新页指定返回字符串
}
publicStringgetnewHtml(){
JSONObjectjson=newJSONObject();
StringId=request.getParameter("Id");
PageRecordpageRecord=pageService.getObjectById(Id);//根据Id获取表内容
StringBuffernewHtml=newStringBuffer(pageRecord.getnewHtml);//得到表中String类型的html字符串
try{
response.getWriter().print(newHtml.toString());//将html的字符串输出到页面
}catch(IOExceptione){
json.put("success",false);
e.printStackTrace();
}
returnnull;
}
}
3、struts配置文件,根据返回字符串跳转到新页
/WEB-INF/jsp/switch/newPage.jsp
4、将需要填充的html字符串填充到新页的表格(newPage.jsp)
varId='${Id}';
$(document).ready(function(){
//将html字符串填充到表格
$.ajax({
type:"post",
url:"/switch/SwitchAction!getNewHtml.do",
data:{
"Id":Id
},
success:function(data){
$("#hiddenTable").html(data);//将html字符串转化为jquery对象
varbasichtml=$("#hiddenTable").find('#id-body').html();//查找对象中子节点的值,即表格内容
varstr="序号属性名变更前变更后 ";
varbasichtml=str+basichtml;//加上表头
$("#basicTable").html(basichtml)//将拼接的新字符串填充到表格
refreshTabOffset();//刷新body页面
},
error:function(data){
varstr=data.html;
alert("加载失败。");
refreshTabOffset();
}
});
});
5、newHtml
StringBuffernewPage=newStringBuffer(); newPage.append(""); newPage.append(" 序号 属性名 变更前 变更后 "); resNo=resNo+1; newPage.append(" "); "+resNo+" 编码 "+""+origCode+" "+""+newCode+"
6、PageServiceImpl.java
@Scope("singleton")
@Service("PageService")//自动装载
publicclassPageServiceImplimplementsPageService{
@Autowired//自动装载
PageDaopageDao;
@Override
publicPageRecordgetObjectById(StringId){
returnpageDao.getObjectById(Id);
}
7、PageDaoImpl.java
@Scope("singleton")
@Repository("PageDao")//自动装载
publicclassPageDaoImplextendsHibernateGenericDaoimplementsPageDao{
@Override
publicPageRecordPageRecord(PageRecordrecord){
if(record!=null){
this.saveOrUpdate(record);
}
returnrecord;
}
@Override
publicPageRecordgetObjectById(StringId){
PageRecordPageRecord=null;
if(StringUtil.isEmpty(Id))
returnnull;
StringBufferhql=newStringBuffer("fromPageRecordwhereId=:Id");//防止sql注入
Mapmap=newHashMap();//防止sql注入
map.put("Id",Integer.parseInt(Id));//防止sql注入
Listlist=this.getListByHql(hql.toString(),map);
if(list.size()>0){
PageRecord=list.get(0);
}
returnPageRecord;
}
8、jsp页面引用插件
//自定义脚本
9、jsp页面引用CSS
10、jsp页面布局