jsp里面想用下拉文本框的值做为查询条件,如何实现?
请教一个问题:jsp里面想用下拉文本框的值做为查询条件,如何实现?
<body
<%
String sql = "select * from t_Traintime where trainNo like " +document.form1.part.value;
......
%>
/body>
老是说 无效的 document 类型,我该怎么处理这个问题?要是写在 function 里面怎么写?
<script type= "text/javascript ">
function Query()
{
alert(document.form1.part.value);
//如何写查询的where 条件呢??
}
</SCRIPT>
/head>
我的文本框是 获得的值:
<body
<form name= "form1 ">
<select name= "menu1 " onChange= "document.form1.get.value=this.options[this.selectedIndex].value ">
<option selected> 请选择 </option>
<option value= "TAO "> 1 </option>
<option value= "TBO "> 2 </option>
<input type= "text " value= "初始值 " size= "30 " name= "part " id= "part ">
</form>
....
/body>
ECLIPSE Web project jsp 里面遇到的问题。
急啊。。。。。。。。。。。。。。。。。。。。。
------解决方案-------------------- <%
String menu1= " ",part= " ";
String sql1= " ",sql2= " ",sql3= " ";
String sql = "select * from t_Traintime where 1=1 ";
//1、
if(request.getParameter( "menu1 ")==null)
menu1=Str_rep(request.getParameter( "menu1 "));
//2、
if(request.getParameter( "part ")==null)
part=Str_rep(request.getParameter( "part "));
//判断
if(!menu1.equals( " "))
sql1= " and menu1= ' "+menu1+ " ' "; //下拉列别框,不知道你用的是什么字段,我默认用menu1,到时候你自己改
if(!part.equals( " "))
sql2= " and trainNo like '% "+part+ "% ' ";
sql=sql+sql1+sql2;
out.print(sql+ " <br> "); //查询的时候你用这个sql就可以
//默认没有提交的时候显示的是全部记录,当提交的时候1、2、就会接收值,sql就会自动变化。
//当然提交的是本页
%>
------解决方案--------------------对不起,忘加了点东西。
<%!
public String Str_rep(String str){
if(str==null||str.equals( " ")){
str = " " ;
}else{
try {
// str = new String(str.getBytes( "ISO8859-1 "));
str = new String(str.getBytes( "ISO8859_1 "), "GB2312 ");
}catch (Exception ex) {}
}
return str ;
}
%>