導航:首頁 > 編程語言 > js動態table

js動態table

發布時間:2023-01-16 17:47:49

js動態創建Table,Tr,Td並賦值的具體實現

成果庫修改 要求主題列表隨成果類型改變而改變 網上查詢資料後開工 在成果類型下拉框添加change()事件觸發Dwr 查詢主題集合——動態創建/編輯Table 概要代碼如下 JS

復制代碼 代碼如下: //動態獲取主題數據 function getzts(){ parentId = document getElementById("bselect ") value; if(parentId!=""){ dwrMethod getZtList(parentId callback ); }else{ //清空主題Table的數據 var t=document getElementById("zhutiTable"); //獲取Table var length= t rows length; //獲得Table下的行數 if(length!= ){ //如果有行 則清空 for(var i=length ;i>= ;i ) { t deleteRow(i); } } var r = t insertRow(); var c = r insertCell(); c innerHTML="暫無主題列表"; document getElementById( zhutiTable ) appendChild(t); } } function callback (provinces){ var t=document getElementById("zhutiTable"); //獲取Table var length= t rows length; //獲得Table下的行數 if(length!= ){ //如果有行 則清空 for(var i=length ;i>= ;i ) { t deleteRow(i); } } if(provinces length> ){ for (var i = ; i < provinces length; i++) { //tr if(i% == ){ var r = t insertRow(t rows length);//創建新的行 } //td var c = r insertCell(); //創建新的列 c innerHTML = "<input type= checkbox name= zhutiIds value="+provinces[i][ ]+">"+provinces[i][ ]; } }else{ var r = t insertRow(); var c = r insertCell(); c innerHTML="暫無主題列表"; } document getElementById( zhutiTable ) appendChild(t); }

復制代碼 代碼如下: lishixin/Article/program/java/JSP/201311/19848

Ⅱ js如何實現點擊編輯按鈕,前端table表格行內指定td可修改。(table是動態生成的)

給你一個思路,你的table是動態生成的,應該是利用js載入對應的json或者xml等數據結合table、版tr、td的樣式生成的。然權後前台可以載入到span或者div裡面來展示。
這樣你可以嘗試一下,點擊編輯button後click的事件,嘗試重新生成一個table,對應的td的內容修改一下:
<td><input type="text" id="tix" value="(data)"/></td>
按照這個思路應該能實現你的功能。

Ⅲ 用js實現動態添加表格數據

<tablewidth="600"border="1"cellspacing="0">

<thead>

<tr>

<th>編號</th>

<th>姓名</th>

<th>職位</th>

<th>操作</th>

</tr>

</thead>

<tbodyid="tbMain"></tbody>

</table>

<scripttype="text/javascript">

//模擬一段JSON數據,實際要從資料庫中讀取

varper=[

{id:001,name:'張珊',job:'學生'},

{id:002,name:'李斯',job:'教師'},

{id:003,name:'王武',job:'經理'}

];

window.onload=function(){

vartbody=document.getElementById('tbMain');

for(vari=0;i<per.length;i++){//遍歷一下json數據

vartrow=getDataRow(per[i]);//定義一個方法,返回tr數據

tbody.appendChild(trow);

}

}

functiongetDataRow(h){

varrow=document.createElement('tr');//創建行

varidCell=document.createElement('td');//創建第一列id

idCell.innerHTML=h.id;//填充數據

row.appendChild(idCell);//加入行,下面類似

varnameCell=document.createElement('td');//創建第二列name

nameCell.innerHTML=h.name;

row.appendChild(nameCell);

varjobCell=document.createElement('td');//創建第三列job

jobCell.innerHTML=h.job;

row.appendChild(jobCell);

//到這里,json中的數據已經添加到表格中,下面為每行末尾添加刪除按鈕

vardelCell=document.createElement('td');//創建第四列,操作列

row.appendChild(delCell);

varbtnDel=document.createElement('input');//創建一個input控制項

btnDel.setAttribute('type','button');//type="button"

btnDel.setAttribute('value','刪除');

//刪除操作

btnDel.οnclick=function(){

if(confirm("確定刪除這一行嘛?")){

//找到按鈕所在行的節點,然後刪掉這一行

this.parentNode.parentNode.parentNode.removeChild(this.parentNode.parentNode);

//btnDel-td-tr-tbody-刪除(tr)

//刷新網頁還原。實際操作中,還要刪除資料庫中數據,實現真正刪除

}

}

delCell.appendChild(btnDel);//把刪除按鈕加入td,別忘了

returnrow;//返回tr數據

}

</script>

(3)js動態table擴展閱讀

js動態創建表格

vartab=document.createElement("table");

tab.border="1px";

document.body.appendChild(tab);

for(vari=0;i<3;i++){

vartr=document.createElement("tr");

for(varj=0;j<3;j++){

vartd=document.createElement("td");

td.innerHTML=Math.round(Math.random()*9);

tr.appendChild(td);

}

tab.appendChild(tr);

vardel=document.createElement("td");

del.innerHTML="刪除";

tr.appendChild(del);

del.onclick=function(){

this.parentNode.remove();

}

}

Ⅳ 只用js如何實現表格內容的動態修改

<body>

<tableid='test'>//定義一個table

<tr>

<td></td><td></td>

</tr>

</table>

<script>

vartb=document.getElementById('test');//獲取表格的dom節點

vartd=tb.rows[0].cells[0];//獲取0行0列的td單元格

td.innerHTML='222';//動態修改表格的內容為222

</script>

</body>

思路:

1、獲取表格的dom節點

2、通過rows和cells定位td單元格

3、通過修改innerHTML

(4)js動態table擴展閱讀:

JS實現動態表格的新增,修改,刪除操作

一、相關JS函數

function setParamslist() {

var tab = document.getElementById("tab");

//表格行數

var rows = tab.rows.length ;

//表格列數

var cells = tab.rows.item(0).cells.length ;

//alert("行數"+rows+"列數"+cells);

var rowData = "";

for(var i=1;i<rows;i++) {

var cellsData = new Array();

for(var j=0;j<cells-1;j++) {

cellsData.push(tab.rows[i].cells[j].innerText); 

}

rowData = rowData + "|" + cellsData;

}

document.getElementById("paramslist").value = rowData;

}

//打開相關新增應用參數界面

function openAppParamsPage() {

var param = new Object();

//這個參數一定要傳。

param.win = window;

param.id = 100;

param.name = "test";

param.birthday = new Date();

var result = window.showModalDialog("addParamsItem","dialogWidth:500px;dialogHeight:600px;dialogLeft:200px;dialogTop=200px");

//var temp = document.getElementById("paramslist").value;

//document.getElementById("paramslist").value = temp + result;

addSort(result);

}

// 增加應用參數函數

function addSort(data) {

var name = data;

if(name == ""||name==undefined ) {

return;

}

console.log(data);

var params = data.split(",");

var paramName = params[0];

var paramCode = params[1];

var paramValue = params[2];

var row = document.createElement("tr");

row.setAttribute("id", paramCode);

var cell = document.createElement("td");

cell.appendChild(document.createTextNode(paramName));

row.appendChild(cell);

cell = document.createElement("td");

cell.appendChild(document.createTextNode(paramCode));

row.appendChild(cell);

cell = document.createElement("td");

cell.appendChild(document.createTextNode(paramValue));

row.appendChild(cell);

var deleteButton = document.createElement("input");

deleteButton.setAttribute("type", "button");

deleteButton.setAttribute("value", "刪除");

deleteButton.onclick = function () { deleteSort(paramCode); };

cell = document.createElement("td");

cell.appendChild(deleteButton);

row.appendChild(cell);

document.getElementById("sortList").appendChild(row);

}

// 刪除應用參數函數

function deleteSort(id) {

if (id!=null){

var rowToDelete = document.getElementById(id);

var sortList = document.getElementById("sortList");

sortList.removeChild(rowToDelete);

}

}

二、彈出框頁面,新增或者修改參數,並回寫相關數據。

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<title>新增應用</title>

<#include "/views/head.html"/>

</head>

<body>

<div class="body-box">

<div class="clear"></div>

<form >

<table width="100%" cellspacing="1" cellpadding="2" border="0"class="pn-ftable">

<tr>

<td>參數名稱:</td>

<td class="pn-fcontent"><input type="text" maxlength="20" class="" required="true" id="paramName" name="paramName"/></td>

</tr>

<tr>

<td>參數編碼:</td>

<td class="pn-fcontent"><input type="text" maxlength="20" class="" required="true" id="paramCode" name="paramCode" required="true" /></td>

</tr>

<tr>

<td>參數值:</td>

<td class="pn-fcontent"><input type="text" maxlength="20" class="" required="true" id="paramValue" name="paramValue" required="true" /></td>

</tr>

<tr>

<td align="center" colspan="4">

<input type="submit" value="保存" onclick="returnResult();"/>

<input type="button" value="返回" onclick="closeWindow();"/>

</td>

</tr>

</table>

</form>

</div>

</body>

</html>

<script type="text/javascript">

//直接關閉窗口

function closeWindow() {

window.close();

}

//獲取值,組裝後返回

function returnResult() {

if(!$('form').valid())

return;

var paramName = document.getElementById("paramName");

var paramCode = document.getElementById("paramCode");

var paramValue = document.getElementById("paramValue");

//alert("value is " + paramName.value + "," + paramCode.value + "," + paramValue.value);

var result = paramName.value + "," + paramCode.value + "," + paramValue.value;

window.returnValue = result;

window.close();

}

</script>

Ⅳ 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動態生成的table如何進行遍歷

從table的父元素開始綁定,比如
<div id="parentOfTable">
<table>
<tr><td><a>a</a></td></tr>
<tr><td><a>b</a></td></tr>
<table>
</div>
==============
var trs=$("#parentOfTable a");

Ⅶ extjs中js怎麼向jsp頁面中動態添加一個7列6行的table

此問題 百分之百是因為你js代碼中 格式 有多餘的逗號
火狐對此不敏感而IE對此敏感。 如果你在myEclipse中安裝了最新的spket插件(專門編輯Ext的)的,編譯都會報錯的。(之前舊版本都沒有的)
如 正確的是{params:'qwe',
id:123
}
而錯誤是
{params:'qwe',
id:123,
}

Ⅷ 如何用JS動態生成table標簽寫入到頁面的DIV里

JS 語法向中添加元素用innerHTML,下面是示例代碼,供參考:
<script>
var div1 = document.getElementById('DIV1');
var code = '<TABLE>';
code += '<TR><TH>姓名</TH><TH>性別</TH></TR>';
code += '<TR><TD>張三</TD><TD>男</TD></TR>';
code += '<TR><TD>李三</TD><TD>女</TD></TR>';
code += '<TR><TD>王三</TD><TD>男</TD></TR>';
code += '<TR><TD>趙三</TD><TD>男</TD></TR>';
div1.innerHTML = code + '</TABLE>';
</script>
<body>
<div id='div1'></div>
</body>

但通常來說,開發者習慣動態的去添加行而非動態生成表格,因為表頭基本都是固定的,每次都刷影響效率,故代碼如下:
<script>
var div1 = document.getElementById('tb1');
var code = '';
code += '<TR><TD>張三</TD><TD>男</TD></TR>';
code += '<TR><TD>李三</TD><TD>女</TD></TR>';
code += '<TR><TD>王三</TD><TD>男</TD></TR>';
code += '<TR><TD>趙三</TD><TD>男</TD></TR>';
div1.innerHTML = code;
</script>
<body>
<div>
<table>
<THEAD><TR><TH>姓名</TH><TH>性別</TH></TR></THEAD>
<TBODY id='tb1'></TBODY>
</table>
</div>
</body>

Ⅸ js動態給table添加內容並顯示

給你思抄路,table的tr就是你要插入襲的內容,td就是值,點擊的時候獲取上面的值,分別放入td中,就可以最後用table對象append就可以了,至於tr對象你可以自己寫一個html模板,或者用插件模板都可以比如jquerytemplate插件。

Ⅹ 用js實現動態添加表格數據

<tablewidth="600"border="1"cellspacing="0">

<thead>

<tr>

<th>編號</th>

<th>姓名</th>

<th>職位</th>

<th>操作</th>

</tr>

</thead>

<tbodyid="tbMain"></tbody>

</table>

<scripttype="text/javascript">

//模擬一段JSON數據,實際要從資料庫中讀取

varper=[

{id:001,name:'張珊',job:'學生'},

{id:002,name:'李斯',job:'教師'},

{id:003,name:'王武',job:'經理'}

];

window.onload=function(){

vartbody=document.getElementById('tbMain');

for(vari=0;i<per.length;i++){//遍歷一下json數據

vartrow=getDataRow(per[i]);//定義一個方法,返回tr數據

tbody.appendChild(trow);

}

}

functiongetDataRow(h){

varrow=document.createElement('tr');//創建行

varidCell=document.createElement('td');//創建第一列id

idCell.innerHTML=h.id;//填充數據

row.appendChild(idCell);//加入行,下面類似

varnameCell=document.createElement('td');//創建第二列name

nameCell.innerHTML=h.name;

row.appendChild(nameCell);

varjobCell=document.createElement('td');//創建第三列job

jobCell.innerHTML=h.job;

row.appendChild(jobCell);

//到這里,json中的數據已經添加到表格中,下面為每行末尾添加刪除按鈕

vardelCell=document.createElement('td');//創建第四列,操作列

row.appendChild(delCell);

varbtnDel=document.createElement('input');//創建一個input控制項

btnDel.setAttribute('type','button');//type="button"

btnDel.setAttribute('value','刪除');

//刪除操作

btnDel.οnclick=function(){

if(confirm("確定刪除這一行嘛?")){

//找到按鈕所在行的節點,然後刪掉這一行

this.parentNode.parentNode.parentNode.removeChild(this.parentNode.parentNode);

//btnDel-td-tr-tbody-刪除(tr)

//刷新網頁還原。實際操作中,還要刪除資料庫中數據,實現真正刪除

}

}

delCell.appendChild(btnDel);//把刪除按鈕加入td,別忘了

returnrow;//返回tr數據

}

</script>

(10)js動態table擴展閱讀

js動態創建表格

vartab=document.createElement("table");

tab.border="1px";

document.body.appendChild(tab);

for(vari=0;i<3;i++){

vartr=document.createElement("tr");

for(varj=0;j<3;j++){

vartd=document.createElement("td");

td.innerHTML=Math.round(Math.random()*9);

tr.appendChild(td);

}

tab.appendChild(tr);

vardel=document.createElement("td");

del.innerHTML="刪除";

tr.appendChild(del);

del.onclick=function(){

this.parentNode.remove();

}

}

閱讀全文

與js動態table相關的資料

熱點內容
word2007層次結構 瀏覽:456
去掉文件名的數字 瀏覽:713
word公司 瀏覽:710
淘寶店數據包怎麼上傳 瀏覽:341
pbt文件 瀏覽:204
HX基礎編程怎麼改變字體 瀏覽:876
怎麼開網路教學 瀏覽:915
630升級工程武器 瀏覽:936
用換機助手接收的軟體文件在哪找 瀏覽:282
閱達app一教一輔五年級有哪些 瀏覽:7
win10系統用f2調節音量 瀏覽:19
壓縮文件密碼器 瀏覽:840
線下活動數據分析有哪些 瀏覽:314
助聽器插片式編程線如何連接 瀏覽:293
怎麼刪除系統休眠文件 瀏覽:914
搜索文件內容中包含的文字並替換 瀏覽:542
微信相冊程序圖標 瀏覽:714
win8怎麼顯示文件格式 瀏覽:547
文件伺服器中毒 瀏覽:721
如何修改網站訪問次數 瀏覽:518

友情鏈接