首页 > 编程知识 正文

jsp下拉框从数据库获取内容,jsp下拉框从数据库获取内容的方法

时间:2024-03-25 09:50:23 阅读:333327 作者:FVFB

本文目录一览:

JSP下拉框读取数据库内容问题

jsp页面可以利用Ajax来获取数据库数据来:

在第一级列表的onchange事件中编写:

//投诉信息来源信息级联

function getTsFromDescribe(ts_describe){

var tsfrom = $("#t_tsfrom").val();

var tstsFrom = $("#ts_tsFrom").val();

Ext.Ajax.request( {

url : '${ctx}/complaints/complaints!getTsFrom.action',

params : {

tsfrom : tsfrom//通过json形式将前台每次获取到的值传递给后台

},

success : function(response) {

var json = Ext.util.JSON.decode(response.responseText);

if (json.success) {

var data = json.strongcmList/strong;

if ("" == data) {

alert("请选择投诉类型");

inputForm.t_tsfrom.focus();

$("#ts_tsFrom").empty();//每次需要将上一次的数据进行清空

} else {

$("#ts_tsFrom").empty();

//对获取到的数据进行迭代

for ( var i = 0; i data.length; i++) {

var id = data[i];

var name = data[i];

$("#ts_tsFrom").append(

"option value='" + id + "'" + name + "/option");

}

dwr.util.removeAllOptions('tstsFrom');

dwr.util.addOptions('tstsFrom', data);

}

}

}

});

}

后台返回数据:

public void getTsFrom() throws Exception {

HttpServletResponse response = ServletActionContext.getResponse();

String ts_names = tsfrom;

ListCustomManage list = complaintsmanager.getTsDescribe(ts_names);

response.setContentType("text/javascript"); // 后台控制的代码

PrintWriter writer = response.getWriter();

// 将得到的list集合转为JSON对象传给前台处理

JSONArray j = JSONArray.fromObject(list);

writer.println("{'success':true,'strongcmList/strong':" + j.toString() + "}");

}

在jsp中下拉框中如何获取数据库中的值

但是还有一种方法通过js获取下拉框的值select name="sel" onchange="check()" -- 增加onchange事件%while (rs.next()) {%option value="" -- 这里没有给选项赋值-- 改为,如:option value="%=rs.getString(1)%"%=rs.getString(1)%/option %}%/selectscript type="text/javascript"function check(){var id = document.getElementsByName("sel").value;-- 获取下拉框的值如:拼接url打开页面,var url = 'xxxx.do?id=' + id;//注,具体的url你要自己拼写,我这个是列子,不能用的方法1,在本窗口打开页面:window.location = url ;方法2,新窗口打开页面window.open(url)}/script 追问: 我终于发现了,能读取数据,可是把读取的数据放入数据库中就有问题了,难道还要转码才行吗? 回答: 当然`~~ 追问: 页面编码是gb2312那我要怎样转码呢? 回答: 首先你要知道你的数据库的是什么编码的,你页面的编码要符合你数据库的编码,这样的转码才是正确的 追问: 现在我不是从页面读取数据了,而是直接在程序中测试Date.valueOf("1987-3-7")比如我用这样的方法把这个数据放到数据库中去就自动变成了1905-6-1了,感觉太怪了这个就和编码无关了 回答: 你具体的代码我也不知道,也不好给你说,给你个UTF-8转GB2312的代码吧private String utf8Togb2312(String str){StringBuffer sb = new StringBuffer();for(int i=0; istr.length(); i++) {char c = str.charAt(i);switch (c) {case '+':sb.append(' ');break;case '%':try {sb.append((char)Integer.parseInt(str.substring(i+1,i+3),16));}catch (NumberFormatException e) {throw new IllegalArgumentException();}i += 2;break;default:sb.append(c);break;}}String result = sb.toString();String res=null;try{byte[] inputBytes = result.getBytes("8859_1");

jsp中下拉框中的值从数据库中动态获取

jsp中把数据库全量查询后填充select列表:

举例说明:

table

tr

td width="400px" align="left"入学批次:SELECT NAME="grade"

id="grade" onchange="refreshEduLevelAndSpecialAjax();" //选择入学批次会刷新层次和专业

OPTION VALUE="0"

--请选择--

c:forEach items="${gradeInfo}" var="gradeInfo"

OPTION VALUE="${gradeInfo.gradeName}"${gradeInfo.gradeName}

/c:forEach

/SELECT/td

td width="400px" align="left"统考课程:SELECT

NAME="uniExamCourseId" id="uniExamCourseId"

OPTION VALUE="0"

--请选择--

c:forEach items="${unifiedExamCourseList}" var="uniExamCourse"

OPTION VALUE="${uniExamCourse.id}"${uniExamCourse.uniExamCourseName}

/c:forEach

/SELECT/td

/tr

tr

td colspan="2" id="refreshEduLevelAndSpecialAjax" //设置ID,用于填充层次和专业的下拉框

table

tr

td width="400" align="left"层 次:SELECT

NAME="eduLevelId" id="eduLevelId"

onchange="refreshSpecialAjax();" //选择层次后刷新专业

OPTION VALUE="0"--请选择--/OPTION

c:forEach items="${educationLevel}" var="educationLevel"

OPTION VALUE="${educationLevel.id}"${educationLevel.educationLevelName}

/c:forEach

/SELECT/td

td width="400" align="left" id="refreshSpecialAjax"专 业:SELECT //设置ID,用于填充专业的下拉框

NAME="specialId" id="specialId"

OPTION VALUE="0"--请选择--/OPTION

c:forEach items="${specialList}" var="special"

OPTION VALUE="${special.id}"${special.specialName}

/c:forEach

/SELECT/td

/tr

/table

/td

/tr

/table

java后台通过dao接口获取specialList的值,并且保存到session即可。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。