java - 将值从一个 JSP 页面传递到另一个 JSP 页面并从第一个 JSP 获取响应数据

标签 java jquery html jsp jstl

下面是我的first.jsp我应该从中调用 second.jsp使用 AJAX 的页面...我需要传递 first.jsp 中的值页面至second.jsp页。

然后在 second.jsp页面使用该变量值并使用该值进行 SELECT 查询并将数据返回到 first.jsp page

下面是我的first.jsp page

<html>
    <head>
    </head>
    <body>    
        <p><input type="radio" name="dish" value="Indian" id="radioButton"> Continental</input></p>
        <p><label for="male" id="columnData">Male</label></p>    
        <script>
            $(document).ready(function() {
                $('#radioButton').click(function() {
                    alert($('#columnData').html());
                    var name = $('#columnData').html();             
                    $.ajax({  
                        type:"POST",      
                        url: "second.jsp",  
                        data:"name=" +name,           
                        success: function(success) {                                  
                        }  
                    });                 
                });
            });
        </script>
    </body>
</html>

下面是我的second.jsp page我需要从 first.jsp 检索值并进行选择查询并返回结果..

<html>
    <head>
        <title>SELECT Operation</title>
    </head>
    <body>
    <sql:setDataSource var="snapshot" driver="org.postgresql.Driver"
                       url="jdbc:postgresql://localhost/postDB"
                       user="postgres"  password="hello"/>

    <sql:query dataSource="${snapshot}" var="result">
        // use the name variable value here passed from first.jsp page?
        SELECT * from Employees where name = ?;
    </sql:query>
</body>
</html>

我不知道如何将值从一个 JSP 页面传递到另一个 JSP 页面,然后将结果从 secondary.jsp 页面返回到first.jsp 页面?

最佳答案

在您的first.jsp 文件中,尝试使用$.post 代替(更合适)。

$.post("second.jsp", {'name': name}, 
       function(data) 
       { 
          alert("Result from second.jsp: " + data.name + " " + data.type); 
       }
);

在第二个.jsp 文件中,您现在可以像这样获取“name”变量

request.getParameter("name")

然后,执行查询并返回结果

<%@page import="org.json.simple.JSONObject"%>

<%
if (request.getParameter("name") != null)
{
   response.setContentType("application/json");

   ... your select query ...

   JSONObject json = new JSONObject();
   ... put your sql data like this ...
   json.put("name", "hello");
   json.put("type", "world");

   response.getWriter().write(json.toString());
}
%>

关于java - 将值从一个 JSP 页面传递到另一个 JSP 页面并从第一个 JSP 获取响应数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21068389/

相关文章:

html - 无法在 IE 中将 anchor 标记设置为 [已禁用]

javascript - 在 HTML/JS 中点击放大和缩放图片

java - 如何在有向图上实现深度优先搜索访问所有顶点

java - Android XML 位图和 OutOfMemoryError

java - 当数据库返回null时,SimpleJDBCTemplate.queryForInt做了什么?

javascript - 在使用 ajax 显示之前加载 TXT 文件

javascript - 如何使用 jQuery load() 函数从容器本身内部的 anchor 加载 html?

javascript - 无法在 webpack.config 上要求 webpack

javascript - 仅当用户启用了 JavaScript 时才使用一些 CSS

Java,Maven,连接SQL,没有合适的驱动程序