2011-01-06 12 views
0

javascriptのjsp変数にアクセスしようとすると、いつもnullが返されます。なぜこれはそうですか?どのように私はJavaScriptの実際のJSP変数の値を取得するのですか?javascriptとjsp

<% 
    oldpassword=(String)session.getAttribute("Password"); 
    %> 

のトップへ:ここにあなたが移動する必要が私のコード

<%! String oldpassword; %> 
<html> 
    <head> 
    <script type="text/javascript"> 
     function redirect() 
     { 
     var oldpassword_actual="<%= oldpassword %>"; 
     var oldpassword_entered=document.form.oldpassword.value; 
     var newpassword=document.form.newpassword.value; 
     var reenterpassword=document.form.confirmpassword.value; 

     alert(oldpassword_actual); 
     alert(oldpassword_entered); 
     alert(newpassword); 
     alert(reenterpassword); 
     return false; 
     } 
    </script> 
    </head> 
    <body align="center"> 
    <form name="form" action="" method="post"> 
      Enter old password<input type="password" name="oldpassword"></br></br> 
      Enter new password<input type="password" name="newpassword"></br></br> 
      Reenter new password<input type="password" name="confirmpassword"></br></br> 
     <% 
     oldpassword=(String)session.getAttribute("Password"); 
     %> 
      <input type="submit" name="confirm" value="Confirm" onclick="return redirect()"> 
    </form> 
    </body> 
</html> 

警告ボックスがup..itは、JSP変数にnull値を与えるポップ..

答えて

2

JSP変数がJavaScript変数として表示されているからですforeフォームが提出されます。

短い説明:JSPはwebserverで動作し、HTML/CSS/JSを生成し、webserverはwebbrowserに送信し、HTML/CSS/JSはwebbrowserで動作します。長い説明:communication between Java/JSP and JavaScript

解決方法:JavaScriptをJava Servletに置き換えてください。 JavaScriptはリクエスト処理の仕事のための適切なツールではありません。

+0

この問題を解決するにはどうすればいいですか? – nikhil

+0

サーブレットを学習します。最後の段落のリンクをクリックします。これは[あなたに]前に推奨されています(http://stackoverflow.com/questions/4412758/pass-data-from-one-jsp-page-to-another-jsp-page)。あなたは歩き回る前に、間違ったトラックで現在クロールしています。それをしないで、あなたはどこにも行きません。 Web開発とJSP/Servletの基本概念を正しく理解してください。 – BalusC

+0

私は間違ったトラックを巡っていることは知っていますが、教授にプロジェクトを提出するのに非常に短い時間があります。 – nikhil

0

ですあなたのコード(またはその行の上のどこか:var oldpassword_actual = "<%= oldpassword%>")

関連する問題