求js在线表格编辑器!!!! zhaoxiaoyang(梅雪香@hisoft)DW不行吗?请问一下 你说的DW是什么....??谢谢 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 既然一个可以,改改代码,多个肯定也是可以的。或者页面上放置几个iframe,每个iframe放置一个编辑器。 回复人: cxz7531(大花猫) ( ) 信誉:99 2005-09-28 09:16:00 得分: 0 既然一个可以,改改代码,多个肯定也是可以的。或者页面上放置几个iframe,每个iframe放置一个编辑器。 是啊,说的没错,我是打算改的..开始在想代码太多,改的地方也多,怕自己漏了改哪里就麻烦 <html><head><style> TR {background-color: white; color: black; font-family: verdana; font-size: 20; font-weight: bold;}</style></head> <!-- TOOLBAR_START --><!-- TOOLBAR_EXEMPT --><!-- TOOLBAR_END --> <body style="font-family: verdana"><h2>Table Editor</h2><br><h3>Single click to select a cell, alt-click to select a row</h3><br><div id=TableContainer><table id=TheTable border=1 style="border-collapse: collapse; table-layout: fixed"> <tbody> <tr><td>Cell 1,1</td><td>Cell 1,2</td><td>Cell 1,3</td></tr> <tr><td>Cell 2,1</td><td>Cell 2,2</td><td>Cell 2,3</td></tr> <tr><td>Cell 3,1</td><td>Cell 3,2</td><td>Cell 3,3</td></tr> </tbody></table></div><br><br><br><input id=ButtonAddRow style="width: 200px;" type=button value="Add Row" onclick="addRow()"><br><input id=ButtonRemoveRow style="width: 200px;" type=button value="Remove Row" onclick="removeRow()"><br><input id=ButtonAddCell style="width: 200px;" type=button value="Add Cell" onclick="addCell()"><br><input id=ButtonRemoveCell style="width: 200px;" type=button value="Remove Cell" onclick="removeCell()"><br><input id=ButtonMoveUp style="width: 200px;" type=button value="Move Up" onclick="moveUp()"><br><input id=ButtonMoveDown style="width: 200px;" type=button value="Move Down" onclick="moveDown()"><br><input id=ButtonMoveLeft style="width: 200px;" type=button value="Move Left" onclick="moveLeft()"><br><input id=ButtonMoveRight style="width: 200px;" type=button value="Move Right" onclick="moveRight()"><br><input id=ButtonEditContents style="width: 200px;" type=button value="Edit Contents" onclick="editContents();"><input type=text style="display: none; width: 400px;" id=EditCell><br><input id=ButtonEditStyle style="width: 200px;" type=button value="Edit Table Style" onclick="editStyle();"><input type=text style="display: none; width: 400px;" id=EditStyle><br><script>var lastSelection = null;ButtonAddRow.setExpression("disabled", "nothingSelected(lastSelection)");ButtonRemoveRow.setExpression("disabled", "! rowSelected(lastSelection)");ButtonAddCell.setExpression("disabled", "nothingSelected(lastSelection)");ButtonRemoveCell.setExpression("disabled", "! cellSelected(lastSelection)");ButtonMoveUp.setExpression("disabled", "! rowSelected(lastSelection)");ButtonMoveDown.setExpression("disabled", "! rowSelected(lastSelection)");ButtonMoveLeft.setExpression("disabled", "! cellSelected(lastSelection)");ButtonMoveRight.setExpression("disabled", "! cellSelected(lastSelection)");ButtonEditContents.setExpression("disabled", "(! cellSelected(lastSelection)) || (EditCell.style.display == '')");ButtonEditStyle.setExpression("disabled", "(EditStyle.style.display == '')");ButtonEditStyle.setExpression("value", "'Edit ' + whatIsSelected(lastSelection) + ' Style'");function select(element) { var e, r, c; if (element == null) { e = window.event.srcElement; } else { e = element; } if ((window.event.altKey) || (e.tagName == "TR")) { r = findRow(e); if (r != null) { if (lastSelection != null) { deselectRowOrCell(lastSelection); } selectRowOrCell(r); lastSelection = r; } } else { c = findCell(e); if (c != null) { if (lastSelection != null) { deselectRowOrCell(lastSelection); } selectRowOrCell(c); lastSelection = c; } } window.event.cancelBubble = true;} TableContainer.onclick = select;function cancelSelect() { if (window.event.srcElement.tagName != "BODY") return; if (lastSelection != null) { deselectRowOrCell(lastSelection); lastSelection = null; }}document.onclick = cancelSelect;function findRow(e) { if (e.tagName == "TR") { return e; } else if (e.tagName == "BODY") { return null; } else { return findRow(e.parentElement); }}function findCell(e) { if (e.tagName == "TD") { return e; } else if (e.tagName == "BODY") { return null; } else { return findCell(e.parentElement); }}function deselectRowOrCell(r) { r.runtimeStyle.backgroundColor = ""; r.runtimeStyle.color = ""; //r.runtimeStyle.fontFamily = "Verdana";}function selectRowOrCell(r) { r.runtimeStyle.backgroundColor = "darkblue"; r.runtimeStyle.color = "white"; //r.runtimeStyle.fontFamily = "Verdana";}function addRow() { var r, p, nr; if (lastSelection == null) { r = null; p = TheTable.children[0]; } else { r = lastSelection; if (r.tagName == "TD") { r = r.parentElement; } p = r.parentElement; } nr = document.createElement("TR"); p.insertBefore(nr, r); select(nr); addCell(); return nr; }function removeRow() { var r, p, nr; if (lastSelection == null) return false; r = lastSelection; if (r.tagName == "TD") { r = r.parentElement; } p = r.parentElement; p.removeChild(r); lastSelection = null; return r; }function addCell() { var r, p, c, nc, text; if (lastSelection == null) return false; r = lastSelection; if (r.tagName == "TD") { r = r.parentElement; c = lastSelection; } else { c = null; } nc = document.createElement("TD"); text = document.createTextNode("New Cell"); nc.insertBefore(text, null); r.insertBefore(nc, c); select(nc); return nc;}function removeCell() { var c, p, nr; if (lastSelection == null) return false; c = lastSelection; if (c.tagName != "TD") { return null; } p = c.parentElement; p.removeChild(c); lastSelection = null; return c; }function editContents() { var c, p, nr; if (lastSelection == null) return false; c = lastSelection; if (c.tagName != "TD") { return null; } EditCell.style.display = ""; EditCell.value = c.innerHTML; c.setExpression("innerHTML", "EditCell.value"); EditCell.focus(); EditCell.onblur = unhookContentsExpression;}function unhookContentsExpression() { lastSelection.removeExpression("innerHTML"); EditCell.value = ''; EditCell.style.display = "none";}function editStyle() { var c; if (lastSelection == null) { c = TheTable; } else { c = lastSelection; } EditStyle.style.display = ""; EditStyle.value = c.style.cssText; c.style.setExpression("cssText", "EditStyle.value"); EditStyle.focus(); EditStyle.onblur = unhookStyleExpression;}function unhookStyleExpression() { var c; if (lastSelection == null) { c = TheTable; } else { c = lastSelection; } c.style.removeExpression("cssText"); EditStyle.value = ''; EditStyle.style.display = "none";} function moveUp() { var r, p, ls; if (lastSelection == null) return false; r = lastSelection; if (r.tagName != "TR") { return null; } if (r.rowIndex == 0) return; ls = r.previousSibling; p = ls.parentElement; p.insertBefore(r, ls); return r;}function moveDown() { var r, p, ls; if (lastSelection == null) return false; r = lastSelection; if (r.tagName != "TR") { return null; } ls = r.nextSibling; if (ls == null) return null; p = ls.parentElement; ls = ls.nextSibling; p.insertBefore(r, ls); return r;}function moveLeft() { var c, p, ls; if (lastSelection == null) return false; c = lastSelection; if (c.tagName != "TD") { return null; } ls = c.previousSibling; if (ls == null) return null; p = ls.parentElement; p.insertBefore(c, ls); return c;}function moveRight() { var c, p, ls; if (lastSelection == null) return false; c = lastSelection; if (c.tagName != "TD") { return null; } ls = c.nextSibling; if (ls == null) return null; p = ls.parentElement; ls = ls.nextSibling; p.insertBefore(c, ls); return c;}function nothingSelected() { return (lastSelection == null);}function rowSelected() { var c; if (lastSelection == null) return false; c = lastSelection; return (c.tagName == "TR")}function cellSelected() { var c; if (lastSelection == null) return false; c = lastSelection; return (c.tagName == "TD")}function whatIsSelected() { if (lastSelection == null) return "Table"; if (lastSelection.tagName == "TD") return "Cell"; if (lastSelection.tagName == "TR") return "Row";}</script> 谢谢 cylon(西林),我找到一个很不错,可以符合我的数据验证要求http://www.java2s.com/Code/JavaScriptDemo/TableinJavaScript.htm 如何实现文字翻转180度 帮忙检查一下这段代码 请问怎么把密码输入显示成实心圆???? 我想得到这样的效果!看一下吧!!!PLMM的问题~~~ 搞不清frames,top,parent,window,document的关系啊 js中有没有和vbs中Chr()一样的函数 <a>自动执行问题 请问如何用js改变列表框中各元素的排列顺序? 主页中的滚动条是粗细和颜色是否可调节??? 请教一个JS, B页面传一个值到A页面的<INPUT> JS导出Excel问题,请广大高手指教 不用弹出窗口,怎么关闭ie的工具栏、地址栏、菜单等?
或者页面上放置几个iframe,每个iframe放置一个编辑器。
既然一个可以,改改代码,多个肯定也是可以的。
或者页面上放置几个iframe,每个iframe放置一个编辑器。
是啊,说的没错,我是打算改的..
开始在想代码太多,改的地方也多,怕自己漏了改哪里就麻烦
<head>
<style>
TR {background-color: white; color: black; font-family: verdana; font-size: 20; font-weight: bold;}
</style>
</head>
<!-- TOOLBAR_START --><!-- TOOLBAR_EXEMPT --><!-- TOOLBAR_END -->
<body style="font-family: verdana">
<h2>Table Editor</h2>
<br>
<h3>Single click to select a cell, alt-click to select a row</h3>
<br>
<div id=TableContainer>
<table id=TheTable border=1 style="border-collapse: collapse; table-layout: fixed">
<tbody>
<tr><td>Cell 1,1</td><td>Cell 1,2</td><td>Cell 1,3</td></tr>
<tr><td>Cell 2,1</td><td>Cell 2,2</td><td>Cell 2,3</td></tr>
<tr><td>Cell 3,1</td><td>Cell 3,2</td><td>Cell 3,3</td></tr>
</tbody>
</table>
</div><br><br><br><input id=ButtonAddRow style="width: 200px;" type=button value="Add Row" onclick="addRow()"><br>
<input id=ButtonRemoveRow style="width: 200px;" type=button value="Remove Row" onclick="removeRow()"><br>
<input id=ButtonAddCell style="width: 200px;" type=button value="Add Cell" onclick="addCell()"><br>
<input id=ButtonRemoveCell style="width: 200px;" type=button value="Remove Cell" onclick="removeCell()"><br>
<input id=ButtonMoveUp style="width: 200px;" type=button value="Move Up" onclick="moveUp()"><br>
<input id=ButtonMoveDown style="width: 200px;" type=button value="Move Down" onclick="moveDown()"><br>
<input id=ButtonMoveLeft style="width: 200px;" type=button value="Move Left" onclick="moveLeft()"><br>
<input id=ButtonMoveRight style="width: 200px;" type=button value="Move Right" onclick="moveRight()"><br>
<input id=ButtonEditContents style="width: 200px;" type=button value="Edit Contents" onclick="editContents();">
<input type=text style="display: none; width: 400px;" id=EditCell><br>
<input id=ButtonEditStyle style="width: 200px;" type=button value="Edit Table Style" onclick="editStyle();">
<input type=text style="display: none; width: 400px;" id=EditStyle><br>
<script>
var lastSelection = null;ButtonAddRow.setExpression("disabled", "nothingSelected(lastSelection)");
ButtonRemoveRow.setExpression("disabled", "! rowSelected(lastSelection)");
ButtonAddCell.setExpression("disabled", "nothingSelected(lastSelection)");
ButtonRemoveCell.setExpression("disabled", "! cellSelected(lastSelection)");
ButtonMoveUp.setExpression("disabled", "! rowSelected(lastSelection)");
ButtonMoveDown.setExpression("disabled", "! rowSelected(lastSelection)");
ButtonMoveLeft.setExpression("disabled", "! cellSelected(lastSelection)");
ButtonMoveRight.setExpression("disabled", "! cellSelected(lastSelection)");
ButtonEditContents.setExpression("disabled", "(! cellSelected(lastSelection)) || (EditCell.style.display == '')");
ButtonEditStyle.setExpression("disabled", "(EditStyle.style.display == '')");
ButtonEditStyle.setExpression("value", "'Edit ' + whatIsSelected(lastSelection) + ' Style'");function select(element) {
var e, r, c;
if (element == null) {
e = window.event.srcElement;
} else {
e = element;
}
if ((window.event.altKey) || (e.tagName == "TR")) {
r = findRow(e);
if (r != null) {
if (lastSelection != null) {
deselectRowOrCell(lastSelection);
}
selectRowOrCell(r);
lastSelection = r;
}
} else {
c = findCell(e);
if (c != null) {
if (lastSelection != null) {
deselectRowOrCell(lastSelection);
}
selectRowOrCell(c);
lastSelection = c;
}
} window.event.cancelBubble = true;
} TableContainer.onclick = select;function cancelSelect() { if (window.event.srcElement.tagName != "BODY")
return; if (lastSelection != null) {
deselectRowOrCell(lastSelection);
lastSelection = null;
}
}document.onclick = cancelSelect;function findRow(e) {
if (e.tagName == "TR") {
return e;
} else if (e.tagName == "BODY") {
return null;
} else {
return findRow(e.parentElement);
}
}function findCell(e) {
if (e.tagName == "TD") {
return e;
} else if (e.tagName == "BODY") {
return null;
} else {
return findCell(e.parentElement);
}
}function deselectRowOrCell(r) {
r.runtimeStyle.backgroundColor = "";
r.runtimeStyle.color = "";
//r.runtimeStyle.fontFamily = "Verdana";
}function selectRowOrCell(r) {
r.runtimeStyle.backgroundColor = "darkblue";
r.runtimeStyle.color = "white";
//r.runtimeStyle.fontFamily = "Verdana";
}function addRow() {
var r, p, nr;
if (lastSelection == null) {
r = null;
p = TheTable.children[0];
} else {
r = lastSelection; if (r.tagName == "TD") {
r = r.parentElement;
} p = r.parentElement;
} nr = document.createElement("TR"); p.insertBefore(nr, r); select(nr); addCell(); return nr;
}function removeRow() {
var r, p, nr;
if (lastSelection == null)
return false; r = lastSelection; if (r.tagName == "TD") {
r = r.parentElement;
} p = r.parentElement; p.removeChild(r); lastSelection = null;
return r;
}function addCell() {
var r, p, c, nc, text;
if (lastSelection == null)
return false; r = lastSelection; if (r.tagName == "TD") {
r = r.parentElement;
c = lastSelection;
} else {
c = null;
} nc = document.createElement("TD");
text = document.createTextNode("New Cell"); nc.insertBefore(text, null);
r.insertBefore(nc, c); select(nc); return nc;
}function removeCell() {
var c, p, nr;
if (lastSelection == null)
return false; c = lastSelection; if (c.tagName != "TD") {
return null;
} p = c.parentElement; p.removeChild(c); lastSelection = null;
return c;
}function editContents() {
var c, p, nr;
if (lastSelection == null)
return false; c = lastSelection; if (c.tagName != "TD") {
return null;
} EditCell.style.display = ""; EditCell.value = c.innerHTML; c.setExpression("innerHTML", "EditCell.value"); EditCell.focus(); EditCell.onblur = unhookContentsExpression;
}function unhookContentsExpression() {
lastSelection.removeExpression("innerHTML");
EditCell.value = '';
EditCell.style.display = "none";
}function editStyle() {
var c; if (lastSelection == null) {
c = TheTable;
} else {
c = lastSelection;
}
EditStyle.style.display = ""; EditStyle.value = c.style.cssText; c.style.setExpression("cssText", "EditStyle.value"); EditStyle.focus(); EditStyle.onblur = unhookStyleExpression;
}function unhookStyleExpression() {
var c; if (lastSelection == null) {
c = TheTable;
} else {
c = lastSelection;
}
c.style.removeExpression("cssText"); EditStyle.value = '';
EditStyle.style.display = "none";
}
function moveUp() {
var r, p, ls;
if (lastSelection == null)
return false; r = lastSelection; if (r.tagName != "TR") {
return null;
} if (r.rowIndex == 0)
return; ls = r.previousSibling; p = ls.parentElement; p.insertBefore(r, ls); return r;
}function moveDown() {
var r, p, ls;
if (lastSelection == null)
return false; r = lastSelection; if (r.tagName != "TR") {
return null;
} ls = r.nextSibling; if (ls == null)
return null; p = ls.parentElement; ls = ls.nextSibling; p.insertBefore(r, ls); return r;
}function moveLeft() {
var c, p, ls;
if (lastSelection == null)
return false; c = lastSelection; if (c.tagName != "TD") {
return null;
} ls = c.previousSibling; if (ls == null)
return null; p = ls.parentElement; p.insertBefore(c, ls); return c;
}function moveRight() {
var c, p, ls;
if (lastSelection == null)
return false; c = lastSelection; if (c.tagName != "TD") {
return null;
} ls = c.nextSibling; if (ls == null)
return null; p = ls.parentElement; ls = ls.nextSibling; p.insertBefore(c, ls); return c;
}function nothingSelected() {
return (lastSelection == null);
}function rowSelected() {
var c;
if (lastSelection == null)
return false; c = lastSelection; return (c.tagName == "TR")
}function cellSelected() {
var c;
if (lastSelection == null)
return false; c = lastSelection; return (c.tagName == "TD")
}function whatIsSelected() {
if (lastSelection == null)
return "Table";
if (lastSelection.tagName == "TD")
return "Cell";
if (lastSelection.tagName == "TR")
return "Row";
}</script>