jsp数据库下拉框
Ⅰ jsp如何将数据库中的内容显示到下拉列表中
就JSP+Servlet的做法来谈:
用javabean(只包含若干个属性以及Setter和getter方法的类)来封装所要提取的数据(javabean里一个属性对应数据库里的一个字段),此层可被称为M层,用一个类专门做数据库连接再用一个类专门做数据库数据提取此层被称作DAO层它也属于M层,最后用一个Servlet类把取出来并封装好的数据填充进request或session对象里,此Servlet称为C层,最后只需要在JSP页面指定的HTML标签里用一个循环从request或session中取出已封装好的数据对象,再用一个循环遍历这个对象的所有属性就可以了,这个JSP页面就被称作V层。所谓不能在页面上操作数据库的意思是只能在JSP页面通过request对象提取并显示数据,而不能用JDBC做数据库连接和从数据库提取数据的操作。
Ⅱ jsp中下拉框怎么设置可写
直接是不行的,但你可以把下拉框的东西放数据库里,然后用text提交你要写入的内容,然后显示在下拉框中,这样就行了
Ⅲ jsp下拉框动态显示数据库的数据并选择某一个选项并停留在该选项
进到页面时,将上次你保存的数据取出来传过来。然后在加入判断 用这个值和下拉框的option value做比较 相同就设为selected 或者用jquery实现。
$(".selector").val("选中的值");
Ⅳ JSP中怎样将数据库中的数据显示在网页的下拉菜单中
这是我自己以前做的,使用javaBean
<jsp:useBean id="userBean" scope="page" class="selfteachweb.conn"/>
把数据库里的数据在跳转下拉菜单中显示
<form name="teachcourse">
<select name="courselist" onChange="MM_jumpMenu('self',this,0)">
<%
String sql="select CouName from Courses,Teachers where Teachers.NickName=Courses.NickName and Teachers.NickName='"+session.getAttribute("username")+"'";
ResultSet RS=userBean.executeQuery(sql);
while(RS.next()){
%>
<option value="courseteach.jsp" selected><%=RS.getString("CouName")%></option>
<%}
RS.close();
%>
</select>
</form>
把里面的数据库和需要跳转的页面改一下就OK了
Ⅳ JSP下拉框和数据库问题
用一个笨办法!
1.先查询数据库把ID绑定在下拉表中的ID属性!
2.用javaScript选定当前下拉表的选中项也就是ID号!
3.在function中用windows.location进行页面的跳转(url重写进行传递参数把ID号加上),一般用一个Servlet或另一个JSP充当控制器进行接收!在在控制器中用request接收传递过来的ID再去数据库查询名字
4.再在控制器中进行跳转(url重写传递名字)
5.在到JSP用隐式对象request接收名字参数放到Text或者textarea中!在此之前进行一下判断!不然第一次加载要抛异常!因为没有值!
这样不是最好的办法!刷新页面次数教多!最好的办法是AJAX!但是AJAX说起来挺麻烦的!你试着用我的方法做吧!
Ⅵ jsp 如何通过数据库给下拉框赋值
我的采用的是javabena+jsp
一个javabean
()throwsException{//下拉框显示课程信息
ArrayListlist=newArrayList();
try{
db.open();
ResultSetrs=db.select("select*fromCourseInfo");
while(rs.next()){
list.add(newCourseInfo(rs.getInt(1),rs.getString(2),rs.getString(3)));
}
}catch(Exceptione){
e.printStackTrace();
}finally{
db.close();
}
returnlist;
}
然后在jsp中调用
<tr><td>课程:<selectname="course">
<%try{
ArrayListlist=m.selectCourseInfo();
if(list.isEmpty()){
out.println("没有数据显示");
}
for(inti=0;i<list.size();i++){
CourseInfoc=(CourseInfo)list.get(i);%>
<option><%=c.getName()%></option>
<%}}
catch(Exceptione){}
%></select>
</td></tr>
这样就可以动态的显示了
Ⅶ JSP中如何将数据库中的值放入下拉框中
<select name="stu.stu_teacher" id="stu.stu_teacher"/>
<option value="<s:property value='#session.student.stu_teacher'/>" selected><s:property value='#session.student.stu_teacher'/></option>
<s:iterator value="#session.teacher" id="teacher">
<option value="<s:property value='#teacher.teacher_name'/>"><s:property value='#teacher.teacher_name'/></option>
</s:iterator>
</select>
我用的s标签,你改成c标签试试
Ⅷ jsp 中将数据库中数据 如何添加到二级联动下拉框中
<html> <br> <head> <br> </head> <br> <body> <br> <script language="javascript"> <br> <!-- <br> //第一维:第一个下拉列表的值 <br> //第二维:表示下拉列表中看到的字符串 <br> //第三维:表示下拉列表中的值 <br> var subcat = new array(); <br> //如果大类的值是动态的,则可以通过数据库中取出作如下设置 <br> //subcat[<%=count%>] = new array('<%=trim(rs("leemaid"))%>','<%=rs("leemaconte nt")%>','<%=rs("leemacontent")%>'); <br> subcat[0] = new array('1','电视机','=1') <br> subcat[1] = new array('1','电风扇','=2') <br> subcat[2] = new array('1','电饭煲','=3') <br> subcat[3] = new array('1','电炒锅','=4') <br> subcat[4] = new array('1','电灯','=5') <br> subcat[5] = new array('1','电脑','=6') <br> subcat[6] = new array('1','电冰箱','=7') <br> subcat[7] = new array('1','洗衣机','=8') <br> subcat[8] = new array('1','微波炉','=9') <br> subcat[9] = new array('1','vcd影碟机','=1') <br> subcat[10] = new array('2','二极管','=11') <br> subcat[11] = new array('2','三极管','=12') <br> subcat[12] = new array('2','cmos集成块','=13') <br> subcat[13] = new array('2','电阻','=14') <br> subcat[14] = new array('2','电容','=15') <br> subcat[15] = new array('2','整流二极管','=16') <br> subcat[16] = new array('2','整流桥','=17') <br> subcat[17] = new array('2','可控硅','=18') <br> subcat[18] = new array('2','电子枪','=19') <br> subcat[19] = new array('2','光敏二极管','=2') <br> function changeselect1(selectvalue) <br> { <br> document.form1.s2.length = 0;//初始化下拉列表 清空下拉数据 <br> //document.form1.s2.options[0] = new option('请选择二级小类','');//给第一个值 <br> for (i=0; i<subcat.length; i++)//legth=2 <br> { <br> if (subcat[i][0] == selectvalue)//[0] [1] 第一列 第二列 <br> { <br> document.form1.s2.options[document.form1.s2.length] = new option(subcat[i][1], subcat[i][2]); <br> } <br> } <br> } <br> //--> <br> </script> <br> <form name="form1"> <br> 二级联动: <br> <select name="s1" onchange="changeselect1(this.value)"> <br> <option>请选择一级大类</option> <br> <option value="1">家用电器</option> <br> <option value="2">电子元器件</option> <br> </select> <br> <select name="s2" onchange="alert(this.value)"> <br> <option>请选择二级小类</option> <br> </select> <br> </form> <br> </html>
Ⅸ JSP中下拉框是从数据库中读取的。当下拉框选择是,后面的文本框显示对应的信息,如何做最好有例子
本人用的php,其实思路应该是差不多的。
我用的是AJAX,对每次下拉框的onchange事件,作一次异步请求,请求的当然就是服务器的处理程序了(一般是查询数据库),获取返回的json结果,然后再通过JS显示在后面的文本框
下面是分类联动选择的部分JS代码:
//子级category选择
getChildCategory:function(p,c,g){
//$("#pArea").live('change',function(){
varparent_id=$("#"+p).val();
if(parent_id==0){
returnfalse;
//$("#"+c).hide();
//$("#"+g).hide();
}
$.ajax({
type:"POST",
url:"include/getNextCategory.php?type=child",
dataType:"json",
data:{"parent_id":parent_id},
success:function(json){
if(json.success==1){
//alert("这里能执行???");
//$("#"+c).show();
$("#"+c).html("");
$("#"+c).append(json.next_category);
//$("#"+c).get(0).selectedIndex=0;
$("#"+g).html("");
}else{
//alert("failed");
//$("#"+c).html("<option>其他</option>");
}
}
});
//alert(p_category+">"+c_category+">"+g_category);
$("#category").val(p_category+">"+c_category+">"+g_category);
},
后台程序也很简单:
if($type=='child'){
$query="SELECTcid,nameFROMai_categoryWHEREpid='$pid'";
}
if($type=='grand'){
$query="SELECTcid,nameFROMai_categoryWHEREpid='$cid'";
}
$db->query($query);
$arr['next_category']="";
if($pid=='0'||$cid=='0'){
$arr['success']=0;
}
if($db->db_num_rows()>0){
$arr['success']=1;
while($row=$db->fetch_assoc()){
$arr['next_category'].="<optionvalue=".$row['cid'].">".$row['name']."</option>";
}
}else{
$arr['success']=0;
//echo"没有查询到子级区域";
}
echojson_encode($arr);
--本人技术比较菜,请见谅
Ⅹ jsp 下拉框从数据库中如何取值
直接在页面前面连接数据库查询出结果result,然后下面就直接result里面取就可以了。
先声明(拿oracle举例):
<%!
String DBDRIVER = "oracle.jdbc.driver.OracleDriver" ;
String DBURL = "jdbc:oracle:thin:@XXX.XXX.XXX.XXX:1521:XXX" ;
String DBUSER = "XXX" ;
String DBPASSWORD= "XXX" ;
Connection con = null ;
PreparedStatement pstmt = null ;
ResultSet rs = null ;
%>
执行查询:
<%
String sql = "select * from XXX" ;
try
{
Class.forName(DBDRIVER) ;
con = DriverManager.getConnection(DBURL,DBUSER,DBPASSWORD) ;
pstmt = con.prepareStatement(sql) ;
rs = pstmt.executeQuery() ;
%>
显示的时候如下:
<%
while(rs.next())
{
i++ ;
int id=rs.getInt("id");
String title = rs.getString("admin") ;
String author = rs.getString("user") ;
%>
<td><%=admin%></td>
<td><%=user%></td>
大概代码差不多这样了,你看着凑凑