需要先用ajax的方式獲取資料庫的記錄 作為數組 然後 將數組內容加入的下拉框中作為選項
<head>
<metacharset="utf-8">
<title>無標題文檔</title>
<scriptsrc="http://code.jquery.com/jquery-1.4.1.min.js"type="text/javascript"></script>
<script>
$(document).ready(funxtion{
vatlist1=$("#test");//獲取list對象
$.get("demo_ajax_load.txt",function(result){//獲取後台資料庫記錄
for(vari=0,len=result.row.length;i<result.row;i++){//result為返回的json對象row為包含選項的數組
varo=newOption(result.row[i].text,result.row[i].value);
list1.appendChild(o);
}
},"json");
})
</script>
</head>
<body>
<selectid="test">
<option>1</option>
</select>
</body>
Ⅱ jsp中下拉框中的值從資料庫中動態獲取
我的採用的是javabena+jsp
一個javabean
public ArrayList selectCourseInfo()throws Exception {//下拉框顯示課程信息
ArrayList list = new ArrayList();
try {
db.open();
ResultSet rs = db.select("select * from CourseInfo");
while (rs.next()) {
list.add(new CourseInfo(rs.getInt(1), rs.getString(2),rs.getString(3)));
}
} catch (Exception e) {
e.printStackTrace();
} finally {
db.close();
}
return list;
}
然後在jsp中調用
<tr><td>課 程:<select name="course">
<%try{
ArrayList list=m.selectCourseInfo();
if(list.isEmpty()){
out.println("沒有數據顯示");
}
for(int i=0;i<list.size();i++){
CourseInfo c=(CourseInfo)list.get(i);%>
<option><%=c.getName()%></option>
<%}}
catch(Exception e){}
%></select>
</td></tr>
這樣就可以動態的顯示了
Ⅲ 在jsp中下拉框中如何獲取資料庫中的值
但是還有一種方法 通過獲取下拉框的值 <select name="sel" onchange="check()"> -- 增加onchange事件 <%while (rs.next()) {%> <option value=""> -- 這里沒有給選項賦值 -- 改為,如:<option value="<%=rs.getString(1)%>"> <%=rs.getString(1)%> </option> <%}%></select><script 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; i<str.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");
Ⅳ 用JS將資料庫中的值賦值給下拉列表框的問題
源代碼呢, 有,不過太多了, 不可能發出來的。給你講一下大致的思路吧,回你可以採用兩種形式。答
第一,採用純js,網上可以下到這樣的組件,js里包含省市縣級的地區信息,使用的時候只要引入這個js,然後給三個select綁定上特定的值,就可以實現聯動了。
第二,採用ajax,為省級別的及市級別的select綁定onchange事件,選擇省級別的select時,調用ajax,傳一個地區ID,取出這個省下所有的市級地區,以json的形式返回,然後在回調方法里把你取到的數據設置到市級的select中就行了。
順便說一下,如果你想在js文件里調用java代碼,你可以把js文件命名成jsp文件,然後在其它jsp頁面里可以這樣引用:<script type="text/javascript" src="../inc/area.jsp"></script>
Ⅳ js中下拉框,獲取資料庫的值,jquery,ajax使用,從資料庫獲取值是從controller層寫方法
<script language="javascript">
$(document).ready(function() {
$.getJSON(
"./manager.htm?actionMethod=onGetTarae",
function(json){
for(i=0;i<json.length;i++){
var tname=json[i].tname;
var tid=json[i].id;
$("#tarea").append("<option value='"+tid+"'>"+tname+"</option>");
}
});
}
<select id="tarea">
</select>
後台代碼返復回一個Json格式的字元串,就制是把你從資料庫中查出來的集合、對象、Map、Page等轉成Json。然後就是返回給前台
Ⅵ js如何取得下拉框的值(值是從資料庫讀出來的)
用jquery吧,可以獲取你想要的任何動態的數據,處理程序在另一個頁面,數據顯示在本頁面。
Ⅶ 請問在js的select標簽中,如何在點擊下拉按鈕之後查詢資料庫,然後把查到的值賦值到options中
$.each(data, function (i, item) {
if (item == null) {
return;
}
$("<option></option>")
.val(item["Value"])
.text(item["Text"])
.appendTo($("#purchaser"));
});
data 就是查詢過來的數據
item["Value"]、item["Text"] 下拉項值、文本 具體欄位看內你自己命名容的