2017-06-03 22 views
0

index.htmlをHTMLテキストフィールドにJSPファイルの出力を取得する方法

<form action="add.jsp"> 
first number-<input type="text" name="n1"><br> 
second number-<input type="text" name="n2"><br> 
<input type="submit" value="SUBMIT"><br> 
result-<input type="text"> 
</form> 

add.jsp私はcの値を入れることができますどのように

<body> 
<% 
int a,b,c; 
a=Integer.parseInt(request.getParameter("n1")); 
b=Integer.parseInt(request.getParameter("n2")); 
c=a+b; 
%> 
</body> 

index.htmlページの「結果」テキストフィールド?

答えて

0

まず最初に、私はscriptletsをjspに使用しないことを提案します。 Jspは、処理された結果を提供するためにビューレイヤーで使用され、このアプローチの代わりにすべてのロジックをservletに入れます。

変更あなたのindex.jspのformタグ:これを行うには 簡単な方法

<form action="${pageContext.request.contextPath}/demoCalculator"> 

は今サーブレットを作成します(次のURLでweb.xmlファイルにこのサーブレットをマップする必要があります-pattern "demoCalculator")

import javax.servlet.http.*; 
import javax.servlet.*; 
public class DemoServlet extends HttpServlet{ 
    public void doGet(HttpServletRequest req,HttpServletResponse res) 
    throws ServletException 
    { 

     int a=0,b=0,c=0; 
     a=Integer.parseInt(request.getParameter("n1")); 
     b=Integer.parseInt(request.getParameter("n2")); 
     c=a+b; 
     request.setAttribute("result", c); 
     request.getRequestDispatcher("/index.jsp").forward(request, response); 
    } 
} 

はURLパターン "demoCalculator" とweb.xmlにサーブレットの地図

<servlet-mapping> 
    <servlet-name>DemoServlet</servlet-name> 
    <url-pattern>/demoCalculator/</url-pattern> 
</servlet-mapping> 

jspページをindex.jspとして使用し、結果を次のように保ちます。

result-<input type="text" value='<c:out value="${requestScope.result}"/>' > 
関連する問題