.jsp
<script src="${ctx}/assets/js/jquery-1.8.0.js" type="text/javascript">
<div>
<li><input id="lsjl" type="submit" class="btn_history" value="历史记录" οnclick="lsBut()" /> </li>
</div>
<script src="${ctx}/assets/js/jquery-1.8.0.js" type="text/javascript">
$(function () {
//历史记录刷新
setInterval(function(){
var lsvalue="历史记录";
$.ajax({
//配置
"url": "${ctx}/yjs!getlsCountview.ce",
"type": "GET",
"dataType": "text",
"success": function(resp){
var obj = JSON.parse(resp);
var count=(obj["count"])
//alert("count="+request.getParameter(count));
document.getElementById('lsjl').value=lsvalue+"("+count+")";
}
});
},1000);
</script>
说明一下:
setInterval()
在执行时,它从载入页面后每隔指定的时间执行 一个表达式或者是函数;(功能类似于递归函数);
setTimeout()
从载入后延迟指定的时间去执行一个表达式或者是函数; 仅执行一次 ;
Action.java
/**
* 动态获取count
*/
public void getlsCountview(){
Map<String, Object> map = getMapParams();
JSONObject obj=new JSONObject();
map.put("USER_ID", this.getUserContext().getUserId());
try {
int count = yjsServices.getDbsyDataListCount(map);
obj.put("success", true);
obj.put("count", count);
} catch (Exception e) {
obj.put("success", false);
obj.put("info", e.getMessage());
System.out.println(e.getMessage());
}
outJSONData(obj);
}
Mapper.xml
<!-- 获取待办事宜 count-->
<select id="getDbsyDataListCount" resultType="int" parameterType="hashmap">
select count(*)
from dbuser.YJS_SEARCHREQUEST c
where c.querystate in (0,1)
<if test="@com.cetc.core.util.Ognl@isNotEmpty(USER_ID) ">
and c.useraccount =#{USER_ID}
</if>
</select>
services.java
public int getDbsyDataListCount(Map<String, Object>map){
return yjsMapper.getYjsDataListCount(map);
}
接口 Mapper.java
public int getDbsyDataListCount(Map<String, Object>map);