`

做项目过程中一些知识总结

 
阅读更多

1. jsp页面加载时就运行javascript函数

在<body>内这样写:<body onload="Resolution()">  然后<head>里面这样写

<script type="text/javascript">

function Resolution() { alert("123"); }

</script>

就OK了 也可以利用jQuery来写 $(document).ready(function(){

Resolution();

});


2. jsp页面使用el表达式

只要在jsp头文件里引入

<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>这句话,然后后台设置好值 ,比如后台这样设置:  String message="success"; 然后在jsp页面就可以通过 ${message}来将 success显示出来。


3.在jsp页面如何显示系统时间?

在jsp头文件里面引入<%@ page import="java.util.Date" %>然后在body里面写上<div><%= new Date().toLocaleString() %> </div> 

就可以显示时间了。

4.表单提交问题可以这样写 <form name="form1" id="form1" action="<%=basePath %>onlineHelp/onlineHelpSave.do" method="post">    

  也可以调js方法来使用jQuery获取表单名后调用。<form name="form1" id="form1" action="<%=basePath %>onlineHelp/onlineHelpSave.do">  <input   type=button   value=提交   onclick=saveOnlineHelp()/>   

function saveOnlineHelp(){

$("#form1").submit();

}

另外返回按钮可以这样做 <input   type=button   value=返回  onclick=return()>   

 

function return(){

history.go(-1);

}

还有一种编辑按钮,要将之前填入的信息全部展现出来 <input   type=button   value=编辑  onclick=edit('${onlineHelp.id}')> 后台要这样写andView.addObject("baOnlineHelp", baOnlineHelp); 这样才可以将${onlineHelp.id} 这个值取到。

function edit(id){

var form=$("#form1");

var url="../onlineHelp/onlineHelpEdit.do";

form.append("<input type='hidden' name='id' id='id' value='"+id+"'/>");

form.attr("action",url);

form.submit();

}


 

 

 

 

 

 

5.如何获取当前登陆人的信息?

可以在jsp的头文件里加上<%

String path = request.getContextPath(); 

String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";

//获取当前登陆用户信息

User user=(User)request.getSession().getAttribute("USER_NOW");

%>  然后在后面利用  <div><%=user.getName() %></div>来得到。


6.如何在已有记录的页面显示编辑与删除按钮 在没有记录的页面显示新建按钮

可以在后台设置一个flag ,初始为false,后台action方法里面确定有没有记录 ,如果有则改为false ,然后jsp页面显示时可以这样做  先在头文件引入jstl标签库 <%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>

<!-- 显示编辑和删除按钮 -->

<c:if test="${flag == true }">

<input   type=button   value="编辑"   onclick=editOnlineHelp()/>

<input   type=button   value="删除"   onclick=deleteOnlineHelp()/>

</c:if>

 

<!-- 显示新建按钮 -->

<c:if test="${flag == false}">

<rcupage:operate icon="icon01.gif" btName="new" title="new" jsFunc="doAdd()" />

</c:if>

 

 

8. 后台如何向前台传值,前台如何向后台传值?

    第一种 首先是在后台设置 andView.addObject("porgid", porgid);

然后前台才能利用 <input type="text" name="porgid" id="porgid" value="${porgid}"/> 将porgid显示出来。

    第二种 前台向后台传值可以通过参数来传递例如:

 function showMenuList(treeNode) {

//得到导航节点的id

var mid=treeNode.id;

//得到节点所属的层级

var menuLevel=treeNode.menuLevel;

var iframe=$("#cont_welcome");

//点击结点后是通过调用这个action里的相应的方法来将数据显示在页面右边,这里是将结点的Id作为参数传过去 即把 porgid传过去

  var url="../onlineHelp/treeViewIframe.do?porgid="+mid+"&menuLevel="+menuLevel;

iframe.attr("src",url);

}     这里是把porgid 和menuLevel 作为参数传给后台。其值分别为  mid  和 menuLevel   之样传值后 ,后台的action方法里面可以直接写上这两个参数就可以得到值了。如public ModelAndView treeViewIframe(String porgid, Integer menuLevel){...}


9. firebug的使用

10. eclipse的debug的使用 Eclipse提供step into、step over、 step return三个命令来支持单步调试。三者的具体区别是:step into(快捷键F5)就是单步执行,遇到子函数就进入并且继续单步执行;step over(快捷键F6)是在单步执行时,在函数内遇到子函数时不会进入子函数内单步执行,而是将子函数整个执行完再停止,也就是把子函数整个作为一步。step return(快捷键F7)就是单步执行到子函数内时,用step return就可以执行完子函数余下部分,并返回到上一层函数。说的通俗点就是,step into:进入子函数,step over:越过子函数,但子函数会执行,step return:跳出子函数。

resume 恢复 重新开始 

11.得到项目路径

  pageContext.getServletContext().getContextPath();


 

 

分享到:
评论
Global site tag (gtag.js) - Google Analytics