jsp 二级联动下拉框内容从数据库获取

jsp 二级联动下拉框内容从数据库获取,第1张

function findObject(fName,initValue){

var xml>

直接在页面前面连接数据库查询出结果result,然后下面就直接result里面取就可以了。

先声明(拿oracle举例):

<%!

String DBDRIVER = "oraclejdbcdriverOracleDriver" ;

String DBURL = "jdbc:oracle:thin:@XXXXXXXXXXXX:1521:XXX" ;

String DBUSER = "XXX" ;

String DBPASSWORD= "XXX" ;

Connection con = null ;

PreparedStatement pstmt = null ;

ResultSet rs = null ;

%>

执行查询:

<%

String sql = "select from XXX" ;

try

{

ClassforName(DBDRIVER) ;

con = DriverManagergetConnection(DBURL,DBUSER,DBPASSWORD) ;

pstmt = conprepareStatement(sql) ;

rs = pstmtexecuteQuery() ;

%>

显示的时候如下:

<%

while(rsnext())

{

i++ ;

int id=rsgetInt("id");

String title = rsgetString("admin") ;

String author = rsgetString("user") ;

%>

<td><%=admin%></td>

<td><%=user%></td>

大概代码差不多这样了,你看着凑凑

先把数据库里的数据取出来 内容放到选项框里

java

public static String Option(String str,String str_value,String print_str){

String sel ="<option value="+str_value;

if(strequals(str_value))

sel =sel+" selected";

sel =sel+">"+print_str+"</option>";

return sel;

}

String sql = "select id, name _from table ";

rs = dboQuery(sql);

String option = "";

while (rsnext()) {

option = option

+ ComfuncOption('', rsgetString("id"), rsgetString("name"));}

jsp

<% String option=(String)requestgetAttribute("optiondept");%>

<select name="sel" style="width:135">

<%=option%>

</select>

这是我自己以前做的,使用javaBean

<jsp:useBean id="userBean" scope="page" class="selfteachwebconn"/>

把数据库里的数据在跳转下拉菜单中显示

<form name="teachcourse">

<select name="courselist" onChange="MM_jumpMenu('self',this,0)">

<%

String sql="select CouName from Courses,Teachers where TeachersNickName=CoursesNickName and TeachersNickName='"+sessiongetAttribute("username")+"'";

ResultSet RS=userBeanexecuteQuery(sql);

while(RSnext()){

%>

<option value="courseteachjsp" selected><%=RSgetString("CouName")%></option>

<%}

RSclose();

%>

</select>

</form>

把里面的数据库和需要跳转的页面改一下就OK了

本人用的PHP,其实思路应该是差不多的。

我用的是AJAX,对每次下拉框的onchange事件,作一次异步请求,请求的当然就是服务器的处理程序了(一般是查询数据库),获取返回的json结果,然后再通过JS显示在后面的文本框

下面是分类联动选择的部分JS代码:

//子级category选择

getChildCategory:function(p,c,g){

//$("#pArea")live('change',function(){

var parent_id = $("#" + p)val();

if(parent_id == 0){

return false;

//$("#" + c)hide();

//$("#" + g)hide();

}

$ajax({

type:"POST",

url:"include/getNextCategoryphptype=child",

dataType:"json",

data:{"parent_id":parent_id},

success:function(json){

if(jsonsuccess == 1){

//alert("这里能执行???");

//$("#" + c)show();

$("#" + c)html("");

$("#" + c)append(jsonnext_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 = "SELECT cid, name FROM aidu_category WHERE pid = '$pid'";

}

if($type == 'grand'){

$query = "SELECT cid, name FROM aidu_category WHERE pid = '$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'] = "<option value="  $row['cid']  ">"  $row['name']  "</option>";

}

} else {

$arr['success'] = 0;

//echo "没有查询到子级区域";

}

echo json_encode($arr);

-  -本人技术比较菜,请见谅

<option "<c:if test="${value1 == value2}">selected='selected'</c:if>"></option>

value1可以是选项的集合, value2是你的业务值

以上就是关于jsp 二级联动下拉框内容从数据库获取全部的内容,包括:jsp 二级联动下拉框内容从数据库获取、jsp下拉框动态显示数据库的数据并选择某一个选项并停留在该选项、jsp 下拉框从数据库中如何取值等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9762192.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-01
下一篇 2023-05-01

发表评论

登录后才能评论

评论列表(0条)

保存