0

30秒ごとにJavaメソッドへのajax呼び出しを行っています。Java メソッドでいくつかのリクエスト パラメータを設定しています。

ajax 応答からそれらを取得するにはどうすればよいですか。

<script LANGUAGE="JavaScript1.2">

var tId = window.setTimeout(function () { 
location.reload(true);
alert('<s:property value="#disableReload" />');
if('<s:property value="#disableReload" />' == "true"){
    alert("clearing");
}else{
    var url = 'moveETHAction_fetchExecutorData.action';
    var form = document.getElementById('moveForm');
    var params = Form.serialize(form) + '&ms=' +  new Date().getTime();
    form.action = "fetchExecutorData";
    var myAjax = new Ajax.Request(url, {method: 'post', parameters: params, onComplete: showResponseAction} );
}
}, 30 * 1000);

function showResponseAction(originalRequest){
alert(originalRequest.responseText);
    alert('<s:property value="#request[\'DISABLE_FLOW'\]" />');
document.getElementById('actionChange').innerHTML = originalRequest.responseText;
}
</script>

Javaメソッドでは、このパラメーターを設定しています

request.setAttribute(GenericConstants.DISABLE_FLOW, false);

しかし、私はajaxから更新された値を取得していません

4

1 に答える 1

1

HttpServletRequestサーバー側のへの変更は、クライアント側には表示されません。さらにsetAttribute、メソッドは着信HTTPリクエスト文字列には影響しません。HttpServletRequestサーバー側で情報を渡すための追加のストアです。

構造化された方法で、既存の応答に情報を追加する必要があります (JSON は、クライアントがすぐに JavaScript オブジェクトに変換し、応答内の個々の値にアクセスするのに適しています)。お役に立てれば。

于 2012-09-10T06:41:16.480 に答える