導航:首頁 > 編程語言 > js獲取數據生成dtree

js獲取數據生成dtree

發布時間:2021-10-25 11:39:35

① 哪位大俠可以幫我寫一段java代碼!是關於根據資料庫里的數據來形成一個動態樹形圖

這是代碼,你可以自己調試一下。
數據結構如下:

CREATE TABLE dtree (
id int,
pid int,
name varchar(200),
url varchar(200),
title varchar(200),
target varchar(200),
icon varchar(200),
iconopen varchar(200),
opened bit);

為了實現獲取資料庫變數功能,需要建立一個DTree類,並編譯生成CLASS文件,放入\WEB-INF\classes文件夾下。

DTree類代碼如下:

package work3;

public class DTree {
private int id;
private int pid;
private String name;
private String url;
private String title;
private String target;
private String icon;
private String iconOpen;
private int opened;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public int getPid() {
return pid;
}
public void setPid(int pid) {
this.pid = pid;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getUrl() {
return url;
}
public void setUrl(String url) {
this.url = url;
}
public String getTitle() {
return title;
}
public void setTitle(String title) {
this.title = title;
}
public String getTarget() {
return target;
}
public void setTarget(String target) {
this.target = target;
}
public String getIcon() {
return icon;
}
public void setIcon(String icon) {
this.icon = icon;
}
public String getIconOpen() {
return iconOpen;
}
public void setIconOpen(String iconOpen) {
this.iconOpen = iconOpen;
}
public int getOpened() {
return opened;
}
public void setOpened(int opened) {
this.opened = opened;
}

}

work3.jsp代碼如下:

<%@ page language="java" contentType="text/html; charset=GB18030" pageEncoding="GB18030"%>
<%@ page import="java.sql.*"%>
<jsp:useBean id='settree' scope="application" class="work3.DTree" />

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"

"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=GB18030">
<link rel="StyleSheet" href="dtree.css" type="text/css" />
<script type="text/javascript" src="dtree.js"></script>
<title>dTree in MySQL</title>
</head>
<body>

<h2>
Example
</h2>
<div class="dtree">
<p>
<a href="javascript: d.openAll();">open all</a> |
<a href="javascript: d.closeAll();">close all</a>
</p>
<script type="text/javascript">
<!--
d = new dTree('d');
<%
//驅動程序
String driverName = "com.microsoft.jdbc.sqlserver.SQLServerDriver";
//資料庫用戶名
String userName = "sa";
//密碼
String userPwd = "1";
//資料庫名
String dbName = "master";
//表名
String tableName = "dtree";
//連接字元串
String url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName="+dbName;
//載入驅動
Class.forName(driverName).newInstance();
//連接資料庫
java.sql.Connection conn = DriverManager.getConnection(url,userName,userPwd);
//得到Statement實例
java.sql.Statement statement = conn.createStatement();
//查詢數據
String sql = "select * from " + tableName;
//返回結果
java.sql.ResultSet rs = statement.executeQuery(sql);
//獲取變數
while (rs.next()) {
settree.setId(rs.getInt(1));
settree.setPid(rs.getInt(2));
settree.setName(rs.getString(3));
settree.setUrl(rs.getString(4));
settree.setTitle(rs.getString(5));
settree.setTarget(rs.getString(6));
settree.setIcon(rs.getString(7));
settree.setIconOpen(rs.getString(8));
settree.setOpened(rs.getInt(9));

if(settree.getPid()==0)
settree.setOpened(1);
%>
d.add(<%=settree.getId()%>,<%=settree.getPid()%>,'<%=settree.getName()%>','<%=settree.getUrl()%>','<%=settree.getTitle()%>','<%=settree.getTarget()%>','','',<%=settree.getOpened()%>);
<%
}
%>
document.write(d);
//-->
</script>

</div>
</body>
</html>

② 如何利用js獲取由js生成的元素

通過js生成html只要添加到body裡面後,你就可以像操作其他頁面html一樣操作了,比如:<li xx=yy id='myLi'>
$("#myLi").attr("xx");

③ js把以下數據轉成樹形結構

var obj = [
{id: 3, parent: 2},
{id: 1, parent: 'nul'},
{id: 2, parent: 1}
];

④ js怎樣將獲取json轉換為樹形結構

比如這樣一段json
{
"name":"1級菜單內1",
"link":"###",
"isleaf": false,
"level": 0,
"children": [
{
"name":"2級菜單1",
"link":"###",
"isleaf": false,
"level": 1,
"children": [
{
"name":"3級菜單1",
"link":"###",
"isleaf": true,
"level": 2,
"children": null
},
{
"name":"3級菜單2",
"link":"###",
"isleaf": true,
"level": 2,
"children": null
}
]
},
{
"name":"2級菜單2",
"link":"###",
"isleaf": false,
"level": 1,
"children": [
{
"name":"3級菜單3",
"link":"###",
"isleaf": true,
"level": 2,
"children": null
}
]
}
]
}

我怎樣容把他轉換成
<div>
<a href="###">一級菜單</a>
<ul>
<li>
<a>2級菜單1</a>
<ul>
<li><a href="###">3級菜單1</a></li>
<li><a href="###">3級菜單2</a></li>
</ul>
</li>
<li>
<a href="###">2級菜單2</a>
.......
</li>
</ul>
</div>

⑤ JS 如何獲取動態生成的元素的數據,並且進行操作

可以把動態生成的元素的事件委託給固定的父元素(比如$("#selects"))去處理,這樣的話版不管動態添加多少權元素,最終都會把事件冒泡給父元素,父元素再根據target對象獲取事件的委託方並作出相應處理。具體請自行網路「事件委託」或「事件代理」。

⑥ 如何獲取js生成內容的 完整的html代碼

獲得JS生成後的HTML代碼,首先需要要獲取的是那一段代碼,然後在通過innerHTML這個JS的方內法來調用,然後在容輸出這段方法就行了;
代碼:
<html>
<head></head>
<script>
var oDiv = document.getElementById('div1');
alert(oDiv.innerHTML);
</script>
<body>
<div id='div1'>
<p>會被獲取的</p>
</div>
/body>
</html>
這樣就能獲取到JS生成後的html代碼。

⑦ JS讀取JSON數據生成樹

數據量少的話,for就好了,要是有多級結構,最好用數組的形式(JSON多幾層沒關內系,關鍵是結構清晰,容方便擴展):
{
[
{"main_1":{"data":{"cid" : "1","name" : "品牌1","pid" : "0"},"Sub":"[
{"main_1":{"data":{"cid" : "1","name" : "品牌1","pid" : "0"}}},
...
]"}},
{"main_2":{"data":{"cid" : "1","name" : "品牌1","pid" : "0"},"Sub":"[...]"}},
...
]
}

⑧ js根據數據length動態生成dom樹,重復子節點添加到父節點上,故寫了個函數,但效果不能實現,求解答。

沒看出來哪裡「重復」了,至始至終都是同一個 child 節點對象。

問題原因在於題主對引用類型和值類型的概念模糊。

⑨ thinkphp引用dtree,怎麼把dtree的分類名從資料庫獲得數據顯示出來

首先資料庫名和表明不要重復。沒有特別的原因,有的時候這樣會出問題,而且是很難發現的問題。
首先需要一個樹形的表,你的表不是樹形的。
樹形的表需要id和pid(parentID)。你這樣2張表是什麼意思?
一個二級的樹形?
如果是三級呢,四級呢?你的ln是上級的意思?
表的結構應該是這樣的。
create table book_type
(
book_type_id int primary key auto_increment,
book_type_name varchar(255),
pid int
);
insert into book_type values (1,'文學類',0);
insert into book_type values (2,'科幻類',0;
insert into book_type values (3,'世界名著',0);
insert into book_type values (4,'中國文學類',1);
create table book
(
book_id int primary key auto_increment,
name varchar(255),
book_type_id int
);
insert into book values (null,'康熙大帝',4);
insert into book values (null,'黑雨',4);
insert into book values (null,'紫日',4)
資料庫連接的語句一般單獨放到一個文件中。
首先你需要引用dtree的javascript文件。例如這樣<script type="text/javascript" src="dtree.js"></script>
<script type="text/javascript">
var d = new dTree('d');
<%String str="";Statement stmt =null;ResultSet rs=null;String name=null;int ln=0;Class.forName("com.mysql.jdbc.Driver");String url ="jdbc:mysql://localhost/lib?user=root&password=1230";Connection conn= DriverManager.getConnection(url);String preStr ="";for(int i=0;i<1;i++){ preStr+="|---";}stmt =conn.createStatement
();rs= stmt.executeQuery("select * from book_type");while(rs.next()){
%>
d.add(<%=rs.getString("book_type_id")%>,<%=rs.getString("pid")%>,'<%=rs.getString("book_type_name")%>','#');
<%
}
rs.close();
rs = null;
conn.close();
conn = null;
}catch(Exception ex){
out.println(ex.toString());
}
%>
document.write(d);
</script>
這個是查詢圖書類型的,如果加上圖書的信息需要把sql改一下。
改成select * from book_type union select book_id as book_type_id,book_name as book_type_name,book_type_id as pid from book;

⑩ js 根據Json數據的父子關系動態生成table 如圖

我就問一句,你的json數據還會變化不?

如果不會,就傻傻地把 nodes數組裡面的數據插到table里去。內

如果變化的話容,你這樣的json數據結構真是不好,不容易自動化,重寫一個json也比照著這樣結構要省時間。比如:

varnodes=[
{
id:1,
name:"file",
son:{
id:2,name:"file1",.....
},
.....
},
{
id:1,
name:"file",
son:{
id:2,name:"file1",.....
},
}
]

像這樣的結構,解析起來要容易得多。要是能改json,我再寫代碼。

閱讀全文

與js獲取數據生成dtree相關的資料

熱點內容
在線能看的資源電影 瀏覽:308
734什麼錯誤代碼 瀏覽:220
淘寶傳文件軟體 瀏覽:310
韓國電影國語發音 瀏覽:423
第365章天資榜葉凌天 瀏覽:864
大胸乳房電影 瀏覽:200
開網路醫院需要什麼手續 瀏覽:595
2014世界500強word 瀏覽:867
羅蘭曾志偉主演鬼電影全集 瀏覽:961
jsregexpmatch替換 瀏覽:848
飛盧小說vip章節破解方法 瀏覽:497
主角叫陳凡外號屠夫 瀏覽:305
列印文件隱藏軟體 瀏覽:431
js中時分秒正則表達式 瀏覽:569
excel文件查看器 瀏覽:718
電影理發師殺死女友 瀏覽:419
word2003剪貼板 瀏覽:208
手機微信文件已過期或已被清理怎麼辦 瀏覽:997
免費看會員電影網站 瀏覽:639
女生去找在北京送快遞的男朋友的電影 瀏覽:67

友情鏈接