我想在JSP页面中实现按条件查询 25
在一个JSP页面初始加载时显示为无条件从数据库里查询出来的数据然后我想在这个页面里实现按照条件查询还在这个页面里显示查询得到的数据request.getParameter...
在一个JSP页面初始加载时显示为无条件从数据库里查询出来的数据 然后我想在这个页面里实现按照条件查询 还在这个页面里显示查询得到的数据
request.getParameter()这个是得到从前一个页面穿过来的值 这里是要在本页面获取值
我刚才的补充的意思就是 查询思路都是没有问题的 主要是 条件
条件是从一个text中得到 然后再点击按钮的时候将这个值传入到方法 但是获取这个文本框的值是用document 也就是说用JavaScript 而调用dao中的方法时用的是JSP 怎么样把这个document获取的值作为参数给JSP中的方法呢 展开
request.getParameter()这个是得到从前一个页面穿过来的值 这里是要在本页面获取值
我刚才的补充的意思就是 查询思路都是没有问题的 主要是 条件
条件是从一个text中得到 然后再点击按钮的时候将这个值传入到方法 但是获取这个文本框的值是用document 也就是说用JavaScript 而调用dao中的方法时用的是JSP 怎么样把这个document获取的值作为参数给JSP中的方法呢 展开
7个回答
展开全部
声明一下啊,request.getParameter方法是可以取本页面的值的,
这个search.jsp 转发到 本身, 它的上个页面就是它本身,行得通的。
恩,还是不考虑servlet跟框架的情况下,以纯jsp实现。
搞一份伪代码吧。
首先是dao里,准备俩方法
方法A(); //无条件查询
方法B(查询条件); //带查询条件查询
页面search.jsp
准备个参数
1 order //查询条件
<%
String order = request.getParameter("order");
if(null!=order && !"".equals(order)){
结果集 = 方法B(order);
}else{
结果集 = 方法A(); //这里也就是查询条件为空则还是使用不带条件
//的查询
}
....循环迭代显示结果代码
%>
<form action="search.jsp" method="get">
<input type="text" name="order"/> //查询条件
<input type="submit" value="查询"/>
</form>
这样就当你第一次访问该页面时候,参数都为空撒,就直接调用不带查询条件的查询方法了,当你写了条件过去,就是带条件的了
你补充的意思
是不是要点一下button,才把条件查询的结果集显示出来这样一个效果
这个search.jsp 转发到 本身, 它的上个页面就是它本身,行得通的。
恩,还是不考虑servlet跟框架的情况下,以纯jsp实现。
搞一份伪代码吧。
首先是dao里,准备俩方法
方法A(); //无条件查询
方法B(查询条件); //带查询条件查询
页面search.jsp
准备个参数
1 order //查询条件
<%
String order = request.getParameter("order");
if(null!=order && !"".equals(order)){
结果集 = 方法B(order);
}else{
结果集 = 方法A(); //这里也就是查询条件为空则还是使用不带条件
//的查询
}
....循环迭代显示结果代码
%>
<form action="search.jsp" method="get">
<input type="text" name="order"/> //查询条件
<input type="submit" value="查询"/>
</form>
这样就当你第一次访问该页面时候,参数都为空撒,就直接调用不带查询条件的查询方法了,当你写了条件过去,就是带条件的了
你补充的意思
是不是要点一下button,才把条件查询的结果集显示出来这样一个效果
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这个简单,而且基本上做系统中的查询都用到的了,你每次提交把你查询的条件都穿过到servlet中,然后获取参数,判断是否为空,为空则查询全部,不为空,则把参数,加到你的sql中的where 的后面就行了,
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你的查询SQL就写成这样:
StringBuffer Sql = new StringBuffer();
Sql.append("select * ");
Sql.append(" from table c ");
Sql.append(" where c.a = '1' ");
if(null!=parm){
Sql.append("and c.b = '"+parm+"' ");
}
Sql.append(" order by c.c ")
StringBuffer Sql = new StringBuffer();
Sql.append("select * ");
Sql.append(" from table c ");
Sql.append(" where c.a = '1' ");
if(null!=parm){
Sql.append("and c.b = '"+parm+"' ");
}
Sql.append(" order by c.c ")
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你可以先用document获取需要的值,然后把这个值加在location的后面,再在你需要到达的下一个jsp中获取该值,例如
在javascript中
var value = document.getelementById("id").value;
location="other.jsp?value=" + value;
在jsp中用 request.getParameter("value");来获取此值!
在javascript中
var value = document.getelementById("id").value;
location="other.jsp?value=" + value;
在jsp中用 request.getParameter("value");来获取此值!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
采用地址重写的方法啊!在点击的按钮上给他赋值!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询