updateCountWx.action里面的代码:
int counttest = we.test(); //counttest 是需要返回的数据
Httpsession session1 = request.getSession();
session1.setAttribute("counttest", counttest);
//最后要返回的数据,我放在了session1里面返回行吗?
out.print(session1)
ajax代码::
function update() {
$.ajax({
url : "updateCountWx.action" ,
method : "get",
dataType : "??",
success:function(data){
var ??=data;
var str="";
str+="<tr><td><font size=\"5\" style=\"微软雅黑\">今天采集数</font> <font size=\"4\">:</font> </td>";
str+="<td><font size=\"5\" style=\"微软雅黑\"><B>"+${sessionScope.counttest}+"</B></font> <font size=\"4\" style=\"微软雅黑\">次</font></td></tr>";
document.getElementById("updatecount").innerHTML=str;
}
});
}
//页面加载函数
window.onload = function() {
setInterval(update, 5000);
}
??的地方应该填什么?
我out.print(session1)对吗,我把返回的int型数据。放在了session1里面。
我需要在ajax里面接收out.print()出来的数据。ajax怎么改
dataType は、var jo = data の下の「JSON」で、JSON から解析された JavaScript オブジェクトです。
int型であればそのまま出力でき、ほとんどの場合正しく解析できます。ただし、一般的には、オブジェクトまたは配列を出力し、JSON 処理ライブラリを使用してそれを印刷用の文字列に処理することをお勧めします。一般的な Java JSON ライブラリには、Gson、FastJson、Jackson などが含まれます。
通常の JSON として扱ってください。
なぜセッションに入れてフロントデスクに渡す必要があるのですか?なぜこれを行うのかよくわかりませんが、データをバックグラウンドでjson文字列にフォーマットしてフロントデスクに返すのは、フロントデスクがそれを受け取った後、いつでもjson.parseできると思います。アクセスするために json オブジェクトに変換しますよね?
素晴らしい、解決しました! ! !ビアンチェン先生、そして解決策を見つけるのを手伝ってくれた友達全員に感謝します! ! !