您的位置:首页 > Web前端 > JQuery

jquery.ajax与struts1.x,并附带定时调用功能

2013-04-19 11:05 323 查看
js代码:

var sto;    //定时对象
function showButton(){
var loginCode = <c:out value="${loginCode}" />;    //参数
$.ajax({
type: "POST",
url: "<%=path%>/homePage/wlservice/queryTaskList.do",
data: "loginCode="+loginCode,
//dataType:"json",
success: function(msg){
$("#taskDiv").html("");
var json = eval('(' + msg + ')');    //解析json字符串
var html = "<table style='width:100%;  border-collapse:collapse;'>"
+"<tr><th colspan='2' style='font-size:1.5em;  border:1px solid #00CCFF;  padding:3px 7px 2px 7px;'>仓储系统任务列表</th></tr>"
+"<tr>"
+"<th style='font-size:1.2em;  border:1px solid #00CCFF;  padding:3px 7px 2px 7px;'>任务描述</th>"
+"<th style='font-size:1.2em;  border:1px solid #00CCFF;  padding:3px 7px 2px 7px;'>日期</th>"
+"</tr>";
//遍历json list
for(var i=0;i<json.list.length;i++){
var temp = json.list[i];
html+="<tr>"
+"<td style='font-size:1em;  border:1px solid #00CCFF;  padding:3px 7px 2px 7px;'><a href='#' style='color: blue;' onclick=\"functionForward('','"+temp.dbid+"','"+temp.name+"')\">"+temp.name+"</a></td>"
+"<td style='font-size:1em;  border:1px solid #00CCFF;  padding:3px 7px 2px 7px;'>"+temp.create+"</td>"
+"</tr>";

}
html +="</table>";
$("#taskDiv").append(html);
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
alert("任务列表查询失败");
//错误时清除定时器
clearTimeout(sto);
}
});
sto = setTimeout("showButton()", 10000);//重复定时调用

}


struts1.x action

public String  queryTaskList(){
try {
System.out.println("login:"+loginCode);
taskList = service.queryTaskList(loginCode);

//拼json字符串(因项目没有导入json对象包)
String listString = "{list:[";
for (int i = 0; i < taskList.size(); i++) {
WlService temp = taskList.get(i);

listString += "{dbid:\""+temp.getDbid()+"\""
+",name:\""+temp.getName()+"\""
+",create:\""+temp.getCreate()+"\"}";
if (i!=(taskList.size()-1)) {
listString+=",";
}
}
listString += "]}";
System.out.println(listString);
getResponse().setContentType("text/html;charset=UTF-8");   //解决返回值中文乱码问题
getResponse().getWriter().print(listString);//输出ajax返回值

} catch (Exception e) {
e.printStackTrace();
}
return null;//原本方法不需提供返回值,也不用配置转发路径
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: