`
youlong05
  • 浏览: 147132 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

智能表格[适合BS模式项目的录入页面]

    博客分类:
  • AJAX
 
阅读更多
<!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=utf-8">
<meta http-equiv="MSThemeCompatible" content="No">
<title>无标题文档</title>
<script type="text/JavaScript">
<!--
//////////////////////////////////////////页面初始化///////////////////////////////////////
beginListen();
//////////////////////////////////////////页面初始化///////////////////////////////////////
//////////////////////////////////////////ajax类///////////////////////////////////////
function Ajax(url,recvT,stringS,resultF) {
    this.url = url;
    this.stringS = stringS;
    this.xmlHttp = this.createXMLHttpRequest();
    if (this.xmlHttp == null) {
        alert("erro");
        return;
    }
    var objxml = this.xmlHttp;
    objxml.onreadystatechange = function (){Ajax.handleStateChange(objxml,recvT,resultF)};
}

Ajax.prototype.createXMLHttpRequest = function() {
    try { return new ActiveXObject("Msxml2.XMLHTTP");    } catch(e) {}
    try { return new ActiveXObject("Microsoft.XMLHTTP"); } catch(e) {}
    try { return new XMLHttpRequest();                   } catch(e) {}
    return null;
}

Ajax.prototype.createQueryString = function () {
    var queryString = this.stringS;
    return queryString;
}

Ajax.prototype.get = function () {
    url = this.url;
    var queryString = url+"?timeStamp=" + new Date().getTime() + "&" + this.createQueryString();
    this.xmlHttp.open("GET",queryString,true);
    this.xmlHttp.send(null);
}

Ajax.prototype.post = function() {
    url = this.url;
    var url = url + "?timeStamp=" + new Date().getTime();
    var queryString = this.createQueryString();
    this.xmlHttp.open("POST",url,true);
    this.xmlHttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
    this.xmlHttp.send(queryString);
}
   
Ajax.handleStateChange = function (xmlHttp,recvT,resultF) {
    if (xmlHttp.readyState == 4) {
        if (xmlHttp.status == 200) {
        resultF(recvT?xmlHttp.responseXML:xmlHttp.responseText);
        } else {
        alert("您所请求的页面有异常。");
        }
    }
}
//////////////////////////////////////////ajax类///////////////////////////////////////

//////////////////////////////////////////处理鼠标事件///////////////////////////////////////
//表格变色
var toBeColor = "#F8F9FC";
var backColor = "#FFFFFF";
function onChangTrColor(obj) {
    obj.parentNode.style.backgroundColor = toBeColor;
    obj.style.backgroundColor = toBeColor;
    var inputs = obj.parentNode.parentNode.getElementsByTagName("input");
    for (var i = 0; i < inputs.length; i++ ){
        inputs[i].style.backgroundColor = toBeColor;
        inputs[i].parentNode.style.backgroundColor = toBeColor;
    }
}

function outChangTrColor(obj) {
    obj.parentNode.style.backgroundColor = backColor;
    obj.style.backgroundColor = backColor;
    var inputs = obj.parentNode.parentNode.getElementsByTagName("input");
    for (var i = 0; i < inputs.length; i++ ){
        inputs[i].style.backgroundColor = backColor;
        inputs[i].parentNode.style.backgroundColor = backColor;
    }
}

//////////////////////////////////////////处理鼠标事件///////////////////////////////////////

//////////////////////////////////////////处理页面操作///////////////////////////////////////
//复制所选
function copySelect(){
    var checkboxs = document.getElementsByName("checkbox");
    for (var i=0; i<checkboxs.length; i++) {
        if(checkboxs[i].checked == true){
        checkboxs[i].checked = false;
        copyTr(checkboxs[i]);
        checkboxs[i].checked = true;
        }
    }
}

function copyTr(obj) {
    var tbody = document.getElementById("tbData").getElementsByTagName("tbody")[0];
    var Str = obj.parentNode.parentNode;
    var tr =  Str.cloneNode(true);
    tbody.appendChild(tr);
}

//删除所选
function delSelect(){
    var checkboxs = document.getElementsByName("checkbox");
    var table = document.getElementById("tbData");
    var tr = table.getElementsByTagName("tr");
    for (var i=0; i<checkboxs.length; i++) {
        if(tr.length==2){
        checkboxs[i].checked = false;
        return;
        }
        if(checkboxs[i].checked==true){
        removeTr(checkboxs[i]);
        i=-1;
        }
    }
}

function removeTr(obj) {
    var sTr = obj.parentNode.parentNode;
    sTr.parentNode.removeChild(sTr);
}

//全选按钮
function selectAll() {
    var checkboxs = document.getElementsByName("checkbox");
    var mark = true;
    for (var i=0; i<checkboxs.length; i++) {
        if (checkboxs[i].checked==false){mark = false}
    }
    if (mark){
        for (var i=0; i<checkboxs.length; i++) {
            checkboxs[i].checked = false;
        }
    }else{
        for (var i=0; i<checkboxs.length; i++) {
            checkboxs[i].checked = true;
        }
    }
}

//////////////////////////////////////////处理页面操作///////////////////////////////////////

//////////////////////////////////////////处理键盘操作///////////////////////////////////////
//键盘事件
function beginListen(){
    if(document.addEventListener){
    document.addEventListener("keydown",keyDown,true);
    }else{
    document.attachEvent("onkeydown",keyDown);
    }
}
function stopListen(){
    document.detachEvent("onkeydown",keyDown);
}

//处理键盘事件
function keyDown(event){
    if(event.keyCode==13){addTr()}
    if(event.keyCode==46){delTr()}
}

//增加表格
function addTr() {
    var tbody = document.getElementById("tbData").getElementsByTagName("tbody")[0];
    var sTr = tbody.getElementsByTagName("tr")[0];
    var tr =  sTr.cloneNode(true);
    tbody.appendChild(tr);
}

//增加表格
function addTr() {
    var tbody = document.getElementById("tbData").getElementsByTagName("tbody")[0];
    var trs = tbody.getElementsByTagName("tr");
    var sTr = trs[trs.length-1];
    var tr =  sTr.cloneNode(true);
    tbody.appendChild(tr);
}

//删除表格
function delTr() {
    var table = document.getElementById("tbData");
    var tr = table.getElementsByTagName("tr");
    if(tr.length==2){return;}
    var lastTr = tr[tr.length-1];
    lastTr.parentNode.removeChild(lastTr);
}


//////////////////////////////////////////处理键盘操作///////////////////////////////////////

//////////////////////////////////////////处理按钮事件///////////////////////////////////////
//自动填充
var currentObj;
function showDiv(event,obj) {
    var eX = event.clientX;
    var eY = event.clientY;
    var sY = document.body.parentNode.scrollTop;
    var dY = eY + sY;
    var divShowInput = document.getElementById("divShowInput");
    divShowInput.style.top = dY + "px";
    divShowInput.style.left = eX+"px";
    divShowInput.style.display = "block";
    currentObj = obj;
    ////智能菜单////
    fixMenu();
    //判断焦点位置
    var tds = obj.parentNode.parentNode.getElementsByTagName("td");
    var tdOrder;
    for (var i = 0; i < tds.length; i++ ){
        if(tds[i] === obj.parentNode){
            tdOrder = i;
        }
    }
    //填充标题标题
    var tdTitleTr = document.getElementById("tbData").getElementsByTagName("tr")[0];
    var tdTitle = tdTitleTr.getElementsByTagName("td")[tdOrder];
    document.getElementById("barTitle").innerHTML = tdTitle.innerHTML;
    //收集表格信息//判断重复
    var trs = obj.parentNode.parentNode.parentNode.getElementsByTagName("tr");
    var autoFillP = document.getElementById("autoFillP");
    var bankM = true;
    for (var i = 0; i <  trs.length; i++ ){
        var inputValue = trs[i].getElementsByTagName("td")[tdOrder].getElementsByTagName("input")[0].value;
        if (inputValue != "") {
            bankM = false;
            var menus = autoFillP.getElementsByTagName("a");
            if(menus.length > 0) {
            var beliveM = true;
                for (var j = 0; j < menus.length; j++ ){
                    if(menus[j].firstChild.nodeValue == inputValue) {
                        beliveM = false;
                    }
                }
                if(beliveM){
                    var Svalue = document.createElement("a");
                    Svalue.setAttribute("href","javascript:void 0");
                    Svalue.onclick = function () {fillInput(this)};
                    var Stext = document.createTextNode(inputValue);
                    Svalue.appendChild(Stext);
                    autoFillP.appendChild(Svalue);
                }
            }else{
                var Svalue = document.createElement("a");
                Svalue.setAttribute("href","javascript:void 0");
                Svalue.onclick = function () {fillInput(this)};
                var Stext = document.createTextNode(inputValue);
                Svalue.appendChild(Stext);
                autoFillP.appendChild(Svalue);
            }
        }
    }
    if(bankM) {
        var Svalue = document.createElement("a");
        Svalue.setAttribute("href","javascript:void 0");
        var Stext = document.createTextNode("数据空");
        Svalue.appendChild(Stext);
        autoFillP.appendChild(Svalue);
    }
}

function fillInput(obj) {
    currentObj.value = obj.innerHTML;
    var divShowInput = document.getElementById("divShowInput");
    divShowInput.style.display = "none";
}

function clearInput() {
    currentObj.value = "";
    var divShowInput = document.getElementById("divShowInput");
    divShowInput.style.display = "none";
}

function hideDiv(obj) {
    obj.parentNode.style.display = "none";
}

//删除智能菜单已有数据
function fixMenu() {
    var autoFillP = document.getElementById("autoFillP");
    var values = autoFillP.getElementsByTagName("a");
    for (var i = values.length-1; i >= 0; i-- ){
        autoFillP.removeChild(values[i]);   
    }
}
//////////////////////////////////////////处理按钮事件///////////////////////////////////////

//////////////////////////////////////////数据发送///////////////////////////////////////

//////////////////////////////////////////数据发送///////////////////////////////////////
function sendData() {
    var sendName = new Array("ok","A1","A2","A3","A4","A5","A6","A7","A8","A9","A10","A11");
    var trs = document.getElementById("tbData").getElementsByTagName("tbody")[0].getElementsByTagName("tr");
    for (var i = 0; i < trs.length; i++) {
        var sendValue = new Array();
        var values = trs[i].getElementsByTagName("input");
        var postString = sendName[1] + "=" + values[1].value;;
        for (var j = 2; j < values.length; j++) {
            postString = postString + "&" + sendName[j] + "=" + values[j].value;
        }
        var SendAjax = new Ajax("isave.asp",0,postString,sendok);
        SendAjax.post();
        function sendok(revData){
            alert(revData);
        }
    }
}



//////////////////////////////////////////数据发送///////////////////////////////////////


//-->
</script>
<style type="text/css">
<!--
body {
    font-family: Arial, Helvetica, sans-serif;
    font-size: 12px;
    background-color: #E9EDF7;
}
#tbBackground {
    background-color:#FFFFFF;
    text-align:center;
}
#tbData {
    background-color:#DDE3EC;
}
#tbData td {
    background-color:#FFFFFF;
}
#tbData input {
    width:50px;
    border:none;
}
#tbData .checkbox {
    width:15px;
}

#tbData thead {
}

#tbTopOpt a{
    display:block;
    width:80px;
    padding:5px;
    background-color:#F8F9FC;
    border:solid 1px #999999;
    color:#000000;
    text-decoration: none;
}
#tbTopOpt a:hover{
    background-color:#DDE3EC;
}
#tbBomOpt a{
    display:block;
    width:80px;
    padding:5px;
    background-color:#F8F9FC;
    border:solid 1px #999999;
    color:#000000;
    text-decoration: none;
}
#tbBomOpt a:hover{
    background-color:#DDE3EC;
}
#tbData a{
    color:#000000;
    text-decoration: none;
}

#divShowInput {
    position:absolute;
    top:30px;
    left:350px;
    z-index:10;
    background-color:#F8F9FC;
    display:none;
    border:solid 1px #DDE3EC;
    width:100px;
    overflow:hidden;
}
#divShowInput a {
    display:block;
    background-color:#F8F9FC;
    color:#000000;
    text-decoration: none;
    text-align:center;
    width:auto;
}
#divShowInput a:hover {
    background-color:#DDE3EC;
    border-left:solid 2px #FF0000;
    border-right:solid 2px #FF0000;
    color:#FF0000;
}

#divShowInput p {
    cursor:hand;
    margin:0;
    padding:0;
    background-color:#F8F9FC;
    text-align:center;
    border-bottom:double #DDE3EC;
}
-->
</style>
</head>

<body>
<div id="divShowInput">
    <p id="barTitle" onClick="hideDiv(this)"></p>
    <p id="defComP" onClick="hideDiv(this)">
    <a href="javascript:void 0" onClick="clearInput()">清空</a>
    </p>
    <p id="autoFillP">
    <a href="javascript:void 0" onClick="fillInput(this)">Llinzzi</a>
    <a href="javascript:void 0" onClick="fillInput(this)">Huanhuan</a>
    <a href="javascript:void 0" onClick="fillInput(this)">Tom.com</a>
    <a href="javascript:void 0" onClick="fillInput(this)">超级长的长长长长长长</a>
    </p>
</div>
<table id="tbBackground" width="760" border="0" align="center" cellpadding="0" cellspacing="0">
  <tr>
    <td><table id="tbTopOpt" width="700" border="0" align="center" cellpadding="0" cellspacing="0">
      <tr>
        <td height="40" width="125"><a href="javascript:void 0" onClick="copySelect()">复制所选</a></td>
        <td width="537"><a href="javascript:void 0" onClick="delSelect()">删除所选</a></td>
        <td width="38"> </td>
      </tr>
    </table></td>
  </tr>
  <tr>
    <td><table id="tbData" width="750" border="0" align="center" cellpadding="0" cellspacing="1">
    <thead>
      <tr>
        <td height="25" ><a href="javascript:void 0" onClick="selectAll();">全选</a></td>
        <td>A1</td>
        <td>A2</td>
        <td>A3</td>
        <td>A4</td>
        <td>A5</td>
        <td>A6</td>
        <td>A7</td>
        <td>A8</td>
        <td>A9</td>
        <td>A10</td>
        <td>A11</td>
      </tr>
      </thead>
      <tbody>
      <tr>
        <td><input class="checkbox" type="checkbox" name="checkbox" value="checkbox"></td>
        <td><input name="A1" type="text" onFocus="stopListen()" onBlur="beginListen()" onDblClick="showDiv(event,this)" onMouseOver="onChangTrColor(this)" onMouseOut="outChangTrColor(this)"></td>
        <td><input name="A2" type="text" onFocus="stopListen()" onBlur="beginListen()" onDblClick="showDiv(event,this)" onMouseOver="onChangTrColor(this)" onMouseOut="outChangTrColor(this)"></td>
        <td><input name="A3" type="text" onFocus="stopListen()" onBlur="beginListen()" onDblClick="showDiv(event,this)" onMouseOver="onChangTrColor(this)" onMouseOut="outChangTrColor(this)"></td>
        <td><input name="A4" type="text" onFocus="stopListen()" onBlur="beginListen()" onDblClick="showDiv(event,this)" onMouseOver="onChangTrColor(this)" onMouseOut="outChangTrColor(this)"></td>
        <td><input name="A5" type="text"  onFocus="stopListen()" onBlur="beginListen()" onDblClick="showDiv(event,this)" onMouseOver="onChangTrColor(this)" onMouseOut="outChangTrColor(this)"></td>
        <td><input name="A6" type="text" onFocus="stopListen()" onBlur="beginListen()" onDblClick="showDiv(event,this)" onMouseOver="onChangTrColor(this)" onMouseOut="outChangTrColor(this)"></td>
        <td><input name="A7" type="text"  onFocus="stopListen()" onBlur="beginListen()" onDblClick="showDiv(event,this)" onMouseOver="onChangTrColor(this)" onMouseOut="outChangTrColor(this)"></td>
        <td><input name="A8" type="text" onFocus="stopListen()" onBlur="beginListen()" onDblClick="showDiv(event,this)" onMouseOver="onChangTrColor(this)" onMouseOut="outChangTrColor(this)"></td>
        <td><input name="A9" type="text" onFocus="stopListen()" onBlur="beginListen()" onDblClick="showDiv(event,this)" onMouseOver="onChangTrColor(this)" onMouseOut="outChangTrColor(this)"></td>
        <td><input name="A10" type="text" onFocus="stopListen()" onBlur="beginListen()" onDblClick="showDiv(event,this)" onMouseOver="onChangTrColor(this)" onMouseOut="outChangTrColor(this)"></td>
        <td><input name="A11" type="text" onFocus="stopListen()" onBlur="beginListen()" onDblClick="showDiv(event,this)" onMouseOver="onChangTrColor(this)" onMouseOut="outChangTrColor(this)"></td>
      </tr>
      </tbody>
    </table></td>
  </tr>
  <tr>
    <td><table width="700"  border="0" align="center" cellpadding="0" cellspacing="0" id="tbBomOpt">
      <tr>
        <td height="40" width="125"><a href="javascript:void 0" onClick="copySelect()">复制所选</a></td>
        <td width="537"><a href="javascript:void 0" onClick="delSelect()">删除所选</a></td>
        <td width="537"><a href="javascript:void 0" onClick="sendData()">提交</a></td>
        <td width="38"> </td>
      </tr>
    </table></td>
  </tr>
</table>
</body>
</html>

分享到:
评论
2 楼 imluther 2007-01-19  
<!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=utf-8"> 
<meta http-equiv="MSThemeCompatible" content="No"> 
<title>无标题文档</title> 
<script type="text/JavaScript"> 
<!-- 
//////////////////////////////////////////页面初始化/////////////////////////////////////// 
beginListen(); 
//////////////////////////////////////////页面初始化/////////////////////////////////////// 
//////////////////////////////////////////ajax类/////////////////////////////////////// 
function Ajax(url,recvT,stringS,resultF) { 
this.url = url; 
this.stringS = stringS; 
this.xmlHttp = this.createXMLHttpRequest(); 
if (this.xmlHttp == null) { 
alert("erro"); 
return; 
} 
var objxml = this.xmlHttp; 
objxml.onreadystatechange = function (){Ajax.handleStateChange(objxml,recvT,resultF)}; 
}

Ajax.prototype.createXMLHttpRequest = function() { 
try { return new ActiveXObject("Msxml2.XMLHTTP"); } catch(e) {} 
try { return new ActiveXObject("Microsoft.XMLHTTP"); } catch(e) {} 
try { return new XMLHttpRequest(); } catch(e) {} 
return null; 
}

Ajax.prototype.createQueryString = function () { 
var queryString = this.stringS; 
return queryString; 
}

Ajax.prototype.get = function () { 
url = this.url; 
var queryString = url+"?timeStamp=" + new Date().getTime() + "&" + this.createQueryString(); 
this.xmlHttp.open("GET",queryString,true); 
this.xmlHttp.send(null); 
}

Ajax.prototype.post = function() { 
url = this.url; 
var url = url + "?timeStamp=" + new Date().getTime(); 
var queryString = this.createQueryString(); 
this.xmlHttp.open("POST",url,true); 
this.xmlHttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded"); 
this.xmlHttp.send(queryString); 
} 
Ajax.handleStateChange = function (xmlHttp,recvT,resultF) { 
if (xmlHttp.readyState == 4) { 
if (xmlHttp.status == 200) { 
resultF(recvT?xmlHttp.responseXML:xmlHttp.responseText); 
} else { 
alert("您所请求的页面有异常。"); 
} 
} 
} //////////////////////////////////////////ajax类///////////////////////////////////////

//////////////////////////////////////////处理鼠标事件/////////////////////////////////////// 
//表格变色 
var toBeColor = "#F8F9FC"; 
var backColor = "#FFFFFF"; 
function onChangTrColor(obj) { 
obj.parentNode.style.backgroundColor = toBeColor; 
obj.style.backgroundColor = toBeColor; 
var inputs = obj.parentNode.parentNode.getElementsByTagName("input"); 
for (var i = 0; i < inputs.length; i++ ){ 
inputs[i].style.backgroundColor = toBeColor; 
inputs[i].parentNode.style.backgroundColor = toBeColor; 
} 
}

function outChangTrColor(obj) { 
obj.parentNode.style.backgroundColor = backColor; 
obj.style.backgroundColor = backColor; 
var inputs = obj.parentNode.parentNode.getElementsByTagName("input"); 
for (var i = 0; i < inputs.length; i++ ){ 
inputs[i].style.backgroundColor = backColor; 
inputs[i].parentNode.style.backgroundColor = backColor; 
} 
}

//////////////////////////////////////////处理鼠标事件///////////////////////////////////////

//////////////////////////////////////////处理页面操作/////////////////////////////////////// 
//复制所选 
function copySelect(){ 
var checkboxs = document.getElementsByName("checkbox"); 
for (var i=0; i<checkboxs.length; i++) { 
if(checkboxs[i].checked == true){ 
checkboxs[i].checked = false; 
copyTr(checkboxs[i]); 
checkboxs[i].checked = true; 
} 
} 
}

function copyTr(obj) { 
var tbody = document.getElementById("tbData").getElementsByTagName("tbody")[0]; 
var Str = obj.parentNode.parentNode; 
var tr = Str.cloneNode(true); 
tbody.appendChild(tr); 
}

//删除所选 
function delSelect(){ 
var checkboxs = document.getElementsByName("checkbox"); 
var table = document.getElementById("tbData"); 
var tr = table.getElementsByTagName("tr"); 
for (var i=0; i<checkboxs.length; i++) { 
if(tr.length==2){ 
checkboxs[i].checked = false; 
return; 
} 
if(checkboxs[i].checked==true){ 
removeTr(checkboxs[i]); 
i=-1; 
} 
} 
}

function removeTr(obj) { 
var sTr = obj.parentNode.parentNode; 
sTr.parentNode.removeChild(sTr); 
}

//全选按钮 
function selectAll() { 
var checkboxs = document.getElementsByName("checkbox"); 
var mark = true; 
for (var i=0; i<checkboxs.length; i++) { 
if (checkboxs[i].checked==false){mark = false} 
} 
if (mark){ 
for (var i=0; i<checkboxs.length; i++) { 
checkboxs[i].checked = false; 
} 
}else{ 
for (var i=0; i<checkboxs.length; i++) { 
checkboxs[i].checked = true; 
} 
} 
}

//////////////////////////////////////////处理页面操作///////////////////////////////////////

//////////////////////////////////////////处理键盘操作/////////////////////////////////////// 
//键盘事件 
function beginListen(){ 
if(document.addEventListener){ 
document.addEventListener("keydown",keyDown,true); 
}else{ 
document.attachEvent("onkeydown",keyDown); 
} 
} function stopListen(){ 
document.detachEvent("onkeydown",keyDown); 
}

//处理键盘事件 
function keyDown(event){ 
if(event.keyCode==13){addTr()} 
if(event.keyCode==46){delTr()} 
}

//增加表格 
function addTr() { 
var tbody = document.getElementById("tbData").getElementsByTagName("tbody")[0]; 
var sTr = tbody.getElementsByTagName("tr")[0]; 
var tr = sTr.cloneNode(true); 
tbody.appendChild(tr); 
}

//增加表格 
function addTr() { 
var tbody = document.getElementById("tbData").getElementsByTagName("tbody")[0]; 
var trs = tbody.getElementsByTagName("tr"); 
var sTr = trs[trs.length-1]; 
var tr = sTr.cloneNode(true); 
tbody.appendChild(tr); 
}

//删除表格 
function delTr() { 
var table = document.getElementById("tbData"); 
var tr = table.getElementsByTagName("tr"); 
if(tr.length==2){return;} 
var lastTr = tr[tr.length-1]; 
lastTr.parentNode.removeChild(lastTr); 
}

//////////////////////////////////////////处理键盘操作///////////////////////////////////////

//////////////////////////////////////////处理按钮事件/////////////////////////////////////// 
//自动填充 
var currentObj; 
function showDiv(event,obj) { 
var eX = event.clientX; 
var eY = event.clientY; 
var sY = document.body.parentNode.scrollTop; 
var dY = eY + sY; 
var divShowInput = document.getElementById("divShowInput"); 
divShowInput.style.top = dY + "px"; 
divShowInput.style.left = eX+"px"; 
divShowInput.style.display = "block"; 
currentObj = obj; 
////智能菜单//// 
fixMenu(); 
//判断焦点位置 
var tds = obj.parentNode.parentNode.getElementsByTagName("td"); 
var tdOrder; 
for (var i = 0; i < tds.length; i++ ){ 
if(tds[i] === obj.parentNode){ 
tdOrder = i; 
} 
} 
//填充标题标题 
var tdTitleTr = document.getElementById("tbData").getElementsByTagName("tr")[0]; 
var tdTitle = tdTitleTr.getElementsByTagName("td")[tdOrder]; 
document.getElementById("barTitle").innerHTML = tdTitle.innerHTML; 
//收集表格信息//判断重复 
var trs = obj.parentNode.parentNode.parentNode.getElementsByTagName("tr"); 
var autoFillP = document.getElementById("autoFillP"); 
var bankM = true; 
for (var i = 0; i < trs.length; i++ ){ 
var inputValue = trs[i].getElementsByTagName("td")[tdOrder].getElementsByTagName("input")[0].value; 
if (inputValue != "") { 
bankM = false; 
var menus = autoFillP.getElementsByTagName("a"); 
if(menus.length > 0) { 
var beliveM = true; 
for (var j = 0; j < menus.length; j++ ){ 
if(menus[j].firstChild.nodeValue == inputValue) { 
beliveM = false; 
} 
} 
if(beliveM){ 
var Svalue = document.createElement("a"); 
Svalue.setAttribute("href","javascript:void 0"); 
Svalue.onclick = function () {fillInput(this)}; 
var Stext = document.createTextNode(inputValue); 
Svalue.appendChild(Stext); 
autoFillP.appendChild(Svalue); 
} 
}else{ 
var Svalue = document.createElement("a"); 
Svalue.setAttribute("href","javascript:void 0"); 
Svalue.onclick = function () {fillInput(this)}; 
var Stext = document.createTextNode(inputValue); 
Svalue.appendChild(Stext); 
autoFillP.appendChild(Svalue); 
} 
} 
} 
if(bankM) { 
var Svalue = document.createElement("a"); 
Svalue.setAttribute("href","javascript:void 0"); 
var Stext = document.createTextNode("数据空"); 
Svalue.appendChild(Stext); 
autoFillP.appendChild(Svalue); 
} 
}

function fillInput(obj) { 
currentObj.value = obj.innerHTML; 
var divShowInput = document.getElementById("divShowInput"); 
divShowInput.style.display = "none"; 
}

function clearInput() { 
currentObj.value = ""; 
var divShowInput = document.getElementById("divShowInput"); 
divShowInput.style.display = "none"; 
}

function hideDiv(obj) { 
obj.parentNode.style.display = "none"; 
}

//删除智能菜单已有数据 
function fixMenu() { 
var autoFillP = document.getElementById("autoFillP"); 
var values = autoFillP.getElementsByTagName("a"); 
for (var i = values.length-1; i >= 0; i-- ){ 
autoFillP.removeChild(values[i]); 
} 
} //////////////////////////////////////////处理按钮事件///////////////////////////////////////

//////////////////////////////////////////数据发送///////////////////////////////////////

//////////////////////////////////////////数据发送/////////////////////////////////////// 
function sendData() { 
var sendName = new Array("ok","A1","A2","A3","A4","A5","A6","A7","A8","A9","A10","A11"); 
var trs = document.getElementById("tbData").getElementsByTagName("tbody")[0].getElementsByTagName("tr"); 
for (var i = 0; i < trs.length; i++) { 
var sendValue = new Array(); 
var values = trs[i].getElementsByTagName("input"); 
var postString = sendName[1] + "=" + values[1].value;; 
for (var j = 2; j < values.length; j++) { 
postString = postString + "&" + sendName[j] + "=" + values[j].value; 
} 
var SendAjax = new Ajax("isave.asp",0,postString,sendok); 
SendAjax.post(); 
function sendok(revData){ 
alert(revData); 
} 
} 
}

//////////////////////////////////////////数据发送///////////////////////////////////////

//--> 
</script> 
<style type="text/css"> 
<!-- 
body { 
font-family: Arial, Helvetica, sans-serif; 
font-size: 12px; 
background-color: #E9EDF7; 
} #tbBackground { 
background-color:#FFFFFF; 
text-align:center; 
} #tbData { 
background-color:#DDE3EC; 
} #tbData td { 
background-color:#FFFFFF; 
} #tbData input { 
width:50px; 
border:none; 
} #tbData .checkbox { 
width:15px; 
}

#tbData thead { 
}

#tbTopOpt a{ 
display:block; 
width:80px; 
padding:5px; 
background-color:#F8F9FC; 
border:solid 1px #999999; 
color:#000000; 
text-decoration: none; 
} #tbTopOpt a:hover{ 
background-color:#DDE3EC; 
} #tbBomOpt a{ 
display:block; 
width:80px; 
padding:5px; 
background-color:#F8F9FC; 
border:solid 1px #999999; 
color:#000000; 
text-decoration: none; 
} #tbBomOpt a:hover{ 
background-color:#DDE3EC; 
} #tbData a{ 
color:#000000; 
text-decoration: none; 
}

#divShowInput { 
position:absolute; 
top:30px; 
left:350px; 
z-index:10; 
background-color:#F8F9FC; 
display:none; 
border:solid 1px #DDE3EC; 
width:100px; 
overflow:hidden; 
} #divShowInput a { 
display:block; 
background-color:#F8F9FC; 
color:#000000; 
text-decoration: none; 
text-align:center; 
width:auto; 
} #divShowInput a:hover { 
background-color:#DDE3EC; 
border-left:solid 2px #FF0000; 
border-right:solid 2px #FF0000; 
color:#FF0000; 
}

#divShowInput p { 
cursor:hand; 
margin:0; 
padding:0; 
background-color:#F8F9FC; 
text-align:center; 
border-bottom:double #DDE3EC; 
} --> 
</style> 
</head>

<body> 
<div id="divShowInput"> 
<p id="barTitle" onClick="hideDiv(this)"></p> 
<p id="defComP" onClick="hideDiv(this)"> 
<a href="javascript:void 0" onClick="clearInput()">清空</a> 
</p> 
<p id="autoFillP"> 
<a href="javascript:void 0" onClick="fillInput(this)">Llinzzi</a> 
<a href="javascript:void 0" onClick="fillInput(this)">Huanhuan</a> 
<a href="javascript:void 0" onClick="fillInput(this)">Tom.com</a> 
<a href="javascript:void 0" onClick="fillInput(this)">超级长的长长长长长长</a> 
</p> 
</div> 
<table id="tbBackground" width="760" border="0" align="center" cellpadding="0" cellspacing="0"> 
<tr> 
<td><table id="tbTopOpt" width="700" border="0" align="center" cellpadding="0" cellspacing="0"> 
<tr> 
<td height="40" width="125"><a href="javascript:void 0" onClick="copySelect()">复制所选</a></td> 
<td width="537"><a href="javascript:void 0" onClick="delSelect()">删除所选</a></td> 
<td width="38"> </td> 
</tr> 
</table></td> 
</tr> 
<tr> 
<td><table id="tbData" width="750" border="0" align="center" cellpadding="0" cellspacing="1"> 
<thead> 
<tr> 
<td height="25" ><a href="javascript:void 0" onClick="selectAll();">全选</a></td> 
<td>A1</td> 
<td>A2</td> 
<td>A3</td> 
<td>A4</td> 
<td>A5</td> 
<td>A6</td> 
<td>A7</td> 
<td>A8</td> 
<td>A9</td> 
<td>A10</td> 
<td>A11</td> 
</tr> 
</thead> 
<tbody> 
<tr> 
<td><input class="checkbox" type="checkbox" name="checkbox" value="checkbox"></td> 
<td><input name="A1" type="text" onFocus="stopListen()" onBlur="beginListen()" onDblClick="showDiv(event,this)" onMouseOver="onChangTrColor(this)" onMouseOut="outChangTrColor(this)"></td> 
<td><input name="A2" type="text" onFocus="stopListen()" onBlur="beginListen()" onDblClick="showDiv(event,this)" onMouseOver="onChangTrColor(this)" onMouseOut="outChangTrColor(this)"></td> 
<td><input name="A3" type="text" onFocus="stopListen()" onBlur="beginListen()" onDblClick="showDiv(event,this)" onMouseOver="onChangTrColor(this)" onMouseOut="outChangTrColor(this)"></td> 
<td><input name="A4" type="text" onFocus="stopListen()" onBlur="beginListen()" onDblClick="showDiv(event,this)" onMouseOver="onChangTrColor(this)" onMouseOut="outChangTrColor(this)"></td> 
<td><input name="A5" type="text" onFocus="stopListen()" onBlur="beginListen()" onDblClick="showDiv(event,this)" onMouseOver="onChangTrColor(this)" onMouseOut="outChangTrColor(this)"></td> 
<td><input name="A6" type="text" onFocus="stopListen()" onBlur="beginListen()" onDblClick="showDiv(event,this)" onMouseOver="onChangTrColor(this)" onMouseOut="outChangTrColor(this)"></td> 
<td><input name="A7" type="text" onFocus="stopListen()" onBlur="beginListen()" onDblClick="showDiv(event,this)" onMouseOver="onChangTrColor(this)" onMouseOut="outChangTrColor(this)"></td> 
<td><input name="A8" type="text" onFocus="stopListen()" onBlur="beginListen()" onDblClick="showDiv(event,this)" onMouseOver="onChangTrColor(this)" onMouseOut="outChangTrColor(this)"></td> 
<td><input name="A9" type="text" onFocus="stopListen()" onBlur="beginListen()" onDblClick="showDiv(event,this)" onMouseOver="onChangTrColor(this)" onMouseOut="outChangTrColor(this)"></td> 
<td><input name="A10" type="text" onFocus="stopListen()" onBlur="beginListen()" onDblClick="showDiv(event,this)" onMouseOver="onChangTrColor(this)" onMouseOut="outChangTrColor(this)"></td> 
<td><input name="A11" type="text" onFocus="stopListen()" onBlur="beginListen()" onDblClick="showDiv(event,this)" onMouseOver="onChangTrColor(this)" onMouseOut="outChangTrColor(this)"></td> 
</tr> 
</tbody> 
</table></td> 
</tr> 
<tr> 
<td><table width="700" border="0" align="center" cellpadding="0" cellspacing="0" id="tbBomOpt"> 
<tr> 
<td height="40" width="125"><a href="javascript:void 0" onClick="copySelect()">复制所选</a></td> 
<td width="537"><a href="javascript:void 0" onClick="delSelect()">删除所选</a></td> 
<td width="537"><a href="javascript:void 0" onClick="sendData()">提交</a></td> 
<td width="38"> </td> 
</tr> 
</table></td> 
</tr> 
</table> 
</body> 
</html> 
 
1 楼 ouspec 2006-10-04  
为啥不用code 显示代码呢?可以代码高亮的

相关推荐

    CS 模式、BS 模式、CS模式+BS模式

    CS 模式和 BS 模式都是重要的软件开发模式,都是两种不同的软件开发模式,CS 模式适合需要高速响应和复杂处理的应用场景,而 BS 模式适合需要灵活和扩展的应用场景。了解和掌握这两种模式的优缺点和应用场景,是软件...

    bs模式java开发课件

    **BS模式Java开发详解** BS(Browser-Server)模式,也称为B/S架构或浏览器/服务器模式,是当今互联网应用中最常见的一种架构模式。在Java开发中,BS模式被广泛应用于构建Web应用程序,它简化了客户端和服务器端的...

    BS模式的即时通讯系统的设计与实现

    **描述:“基于BS模式的系统,里面有源代码和文档,适合交作业的朋友用”** 这个描述表明提供的是一个完整的项目实例,包含源代码和相关的文档资料,对于学习者来说是一份宝贵的资源。源代码可以帮助理解即时通讯...

    CS与BS模式区别与联系

    CS与BS模式区别与联系 CS结构,即Client/Server(客户机/服务器)结构,是大家熟知的软件系统体系结构,通过将任务合理分配到Client端和Server端,降低了系统的通讯开销,可以充分利用两端硬件环境的优势。 CS结构...

    BS结构项目实训__Java Web开发

    3.1 MVC(Model-View-Controller)模式:BS项目中常用的设计模式,将业务逻辑、数据和界面展示分离,Spring MVC是Java Web中实现MVC的主流框架。 3.2 Spring框架:除了Spring MVC外,Spring还提供依赖注入、事务...

    关于CS与BS模式的讲述

    CS模式(Client/Server)和BS模式(Browser/Server)是两种常见的软件架构模式,它们在互联网应用中占据着重要地位。这两种模式各有其特点,适用于不同的应用场景。 首先,我们来了解一下CS模式。CS模式是一种典型...

    基于BS模式的教学网站

    基于BS模式的教学网站 基于BS模式的教学网站 基于BS模式的教学网站

    基于.net下C#开发的BS模式下网络考试平台(源码)含系统设计解决方案文档.zip

    本项目是基于.NET框架,利用C#编程语言实现的BS(Browser-Server,浏览器-服务器)模式的网络考试系统,提供了全面的功能和高效的性能。下面将对该项目的核心知识点进行详细解析。 首先,我们要理解BS模式。BS模式...

    学生管理系统(BS模式)

    《学生管理系统(BS模式)详解》 学生管理系统是一款基于Browser/Server(BS模式)架构的应用软件,主要用于高校或教育机构管理学生信息、课程安排、成绩记录等日常事务。本系统设计与实现过程中,充分考虑了易用性...

    java +SSM框架 基于BS模式的快递运输平台(毕业设计、课程设计使用).rar

    这个快递运输平台项目利用SSM框架,提供了一个完整的业务流程,适合毕业设计或课程设计使用,不仅能够帮助学生深入理解SSM框架的原理和应用,还能提升其实际开发能力。 1. **Spring框架**:Spring是Java企业级应用...

    基于BS模式的博客网站的设计与实现_BS模式.pdf

    在可行性分析方面,首先从技术可行性上看,BS模式利用了成熟的Web浏览器技术,结合JavaScript等脚本语言,可以实现复杂的业务逻辑,非常适合构建博客系统。其次,经济可行性也是考虑的重点,BS模式降低了客户端的...

    基于JESS的BS模式交互式专家系统外壳的设计与实现_专家系统_BS_

    《基于JESS的BS模式交互式专家系统外壳的设计与实现》 专家系统是人工智能领域的一个重要分支,它利用人类专家的知识和经验,通过计算机程序来解决复杂问题。JESS(Java Expert System Shell)是一种广泛使用的规则...

    基于BS模式的购物平台的设计与实现

    总的来说,基于BS模式的购物平台设计与实现是一项综合性的工程,涉及到Web开发、数据库设计、安全性等多个方面的知识,需要开发者具备全面的技术能力和良好的项目管理能力。通过这样的实践,可以提升开发者在实际...

    基于BS模式的图书管理信息系统

    【BS模式的图书管理信息系统详解】 BS模式,全称为Browser/Server(浏览器/服务器)模式,是当前互联网应用中常见的架构模式。在这种模式下,用户通过浏览器与服务器进行交互,无需在本地安装任何应用程序,降低了...

    BS页面前端开发建议BS页面前端开发建议

    BS 页面前端开发建议 一、基础准备 1. 页面入口引入高版本的 jQuery,推荐使用 jQuery-1.12.4 或直接引入现在 BS 页面里已有的 jQuery-1.8.2.js(其实是 1.11.1 版本)。引入 jQuery 后,通过 `$.fn.jquery` 确认...

    通用BS架构项目模板_asp.netC#_

    【通用BS架构项目模板_asp.netC#】是一个基于ASP.NET C#技术开发的Web应用程序框架,主要用于构建高效、可扩展的企业级B/S(Browser/Server,浏览器/服务器)架构项目。这种架构模式广泛应用于互联网应用、企业信息...

Global site tag (gtag.js) - Google Analytics