2016-12-03 19 views
-1

ajaxを使用してサーブレットにデータをポストしています。そして私はどのようにしてGETサーブレットからの結果を知りません。この問題を解決するために私を助けてください。 サーブレットから結果を取得したい。成功が成功ページにリダイレクトされた場合、失敗した場合は、失敗したページにリダイレクトします。AJAX - SERVLETからの投稿と結果の取得

アヤックス応答"成功"ではなく、別のページにリダイレクトを取得。 this is response

これは私が今までやっていることです:

<script> 
$(document).ready(function() {      
    setInterval("ajaxd()",3000); 

}); 

function ajaxd() { 

$.ajax({ 
    url:'/Query.cfm', 
    data:{amount:'<%=amount%>', No:'<%=No%>', eno:'<%=No%>', fno:'<%=fno%>', sign:'<%=sign%>'}, 


    type:'get', 
    cache:false, 
    success:function(data){ 
    if (data == 'success') { 
     var u = '/notic/succ.jsp?No=<%=No%>&amount=<%=amount%>'; 
     alert(u); 
     window.location.href = u; 
    }else if(data == 'failed'){ 
     window.location.href = '"/notic/failed.jsp?No="<%=No%>"&amount="<%=amount%>'; 
    } 
    }, 
    } 
); 
} 

</script> 

これは私のサーブレットの応答です: 結果: "成功" することができ、または

response.setContentType("text/plain"); 
response.getWriter().println(Result); 
+0

サーブレットコードも入力できますか?おそらく、成功/失敗をServletResponse出力ストリームに書き込む必要があります。 –

+0

私はあなたのjavascriptに 'success'関数の中に' console.log(data); 'を入れて、' data'値が何であるかを調べます。また、エラーを捕捉して記録するために 'success'の下に' error'と 'done'関数を追加してください。あなたはjsonを返さないので、あなたの 'ajax'呼び出しに' 'dataType:text''を追加することもできます。 –

+0

'window.location.href = u; 'の代わりに' window.location = u; 'を試してください。 –

答えて

1
を "失敗"

問題:

0123の代わりに println()を使用したため
print(). 
+0

それはそれを修正しない、おそらく –

+0

console.log(データ)を追加することができます。 (データ== '成功')の後に投稿したデータは –

+0

です。私のコメントを編集できたら...と言いたいと思います: これで解決できない場合は、 console.log (データ); の前に if(data == 'success')ここに何のデータがあるのですか –

関連する問題