に更新していない私は、故障に問題を自分のコードを簡素化しているといただきましたが、実際に間違って行くためのタイムスタンプを持つ単純な例を持っています。 なぜAJAX呼び出しを行うのか驚かないでください。これはサーブレットの本当の機能です。Javascriptの値は、サーブレット
そのサーブレットとfollwingコードはJSPページの一部である、JAVA 1.7とTomcat 7の作業イムは、私は、FirefoxとChromeでそれを実行します。
私の目標は、Javaメソッドから値を取得し、それをサーブレットページのDIV "ContentCharts"に書き込むことです。 問題は、私はJAVA varibleの値を書き込み、これをテストするにはJavascriptが「ツァイト」のvauleを更新していないということです、常にDIV-コンテナに同じタイムスタンプを書き込み、コンソール上
$(document).ready(function()
{
function ausgabe()
{
<%
GregorianCalendar now = new GregorianCalendar();
DateFormat df = DateFormat.getDateTimeInstance(DateFormat.SHORT, DateFormat.LONG);
String JZeit = df.format(now.getTime());
System.out.println("FKT ausgabe zeit:"+ JZeit);
%>
var zeit='<%=JZeit %>';
console.info('Zeit:', zeit);
document.getElementById('ContentCharts').innerHTML = zeit;
}
$("#subtab2").click(function()
{
$.ajax
(
{
url:'overview',
data:{dbname:this.className},
type:'get',
cache:false,
success:function(){ausgabe();},
error:function(){alert('error');}
}
);
}
}
「Jzeit」をServerlogsに追加し、ボタンを3回クリックするとこれが(Click to see the Picture)になります。あなたがここの写真でわかるように、私は正しいタイムスタンプを手に入れます。
私はまた、Firebug ConsoleにJS varialbe "zeit"の値を投稿しました。そして、今私は間違ったタイムスタンプを取得します(Click to see the Picture)
DIVのコンテンツはリフレッシュしていますが、ここではコンソールのような同じ問題、常に同じタイムスタンプです。
これらの私の考えと質問は以下のとおりです。
なぜ持っているJS変数間違った値JAVAでの右? JSに変数を更新する必要があると言うオプションはありますか? JSはJAVAコードの回答を保存し、それをもう実行しないかもしれませんが、値の割り当てのようにJSとJAVAの間に直接接続がないので、上部JAVAコードスニペットを実行するのでしょうか? 問題を解決するにはどうすればよいですか?
あなたは私がそれを求める助けてくださいすることがより多くの情報が必要な場合。