div没有onchange事件 用onpropertychange

解决方案 »

  1.   

    <div       id="msgbox"  CONTENTEDITABLE=true onbeforeeditfocus ="this.oldData=this.firstChild.data" 
    onblur="this.oldData==this.firstChild.data?void(0):alert('加入自己的处理函数名在这里');"  >a;sldfjal   </div> 
      

  2.   

    这里的确高手林立!
    为答谢各位,将我最近写的表格动态编辑的程序贴在这里.还不够完善.但已初具雉形.<script>var ti=10,tj=10;//glc = new Array("GG0","GG1","GG2","GG3","GG4", //20,5
    //glc = new Array("GG0","GG1","GG2","GG3","GG4","GG5","GG6","GG7","GG8","GG9",0,1,2,3,4,5,6,7,8,9, //5,20
    glc = new Array("GG0","GG1","GG2","GG3","GG4","GG5","GG6","GG7","GG8","GG9", //10,10"XXX00","XXX01","XXX02","XXX03","XXX04","XXX05","XXX06","XXX07","XXX08","XXX09",
    "XXX10","XXX11","XXX12","XXX13","XXX14","XXX15","XXX16","XXX17","XXX18","XXX19",
    "XXX20","XXX21","XXX22","XXX23","XXX24","XXX25","XXX26","XXX27","XXX28","XXX29",
    "XXX30","XXX31","XXX32","XXX33","XXX34","XXX35","XXX36","XXX37","XXX38","XXX39",
    "XXX40","XXX41","XXX42","XXX43","XXX44","XXX45","XXX46","XXX47","XXX48","XXX49",
    "XXX50","XXX51","XXX52","XXX53","XXX54","XXX55","XXX56","XXX57","XXX58","XXX59",
    "XXX60","XXX61","XXX62","XXX63","XXX64","XXX65","XXX66","XXX67","XXX68","XXX69",
    "XXX70","XXX71","XXX72","XXX73","XXX74","XXX75","XXX76","XXX77","XXX78","XXX79",
    "XXX80","XXX81","XXX82","XXX83","XXX84","XXX85","XXX86","XXX87","XXX88","XXX89",
    "XXX90","XXX91","XXX92","XXX93","XXX94","XXX95","XXX96","XXX97","XXX98","XXX99");function sm()
    {
    // 不读表的首行(标题),因此i从1开始到ti
    for (var i=1;i<=ti;i++){ 
    for (var j=0;j<=(tj-1);j++){ 
    // document.write("i:"+i+"j:"+j+"__");
    document.write(GLC.rows[i].cells[j].innerText);
    }
    document.write("<BR/>");
    } }</script><script defer> var grow; var table=document.createElement("TABLE") 
     
    document.body.appendChild(table)  ;
    table.id ="GLC";
    table.border=0;
    table.style.backgroundColor="green";
    table.cellSpacing=1;
    table.cellPadding=3;
    table.align="center"; var tbody=document.createElement("TBODY")   
    table.appendChild(tbody) ; var tr=document.createElement("TR");
    tbody.appendChild(tr) ; tr.align="center";
    tr.style.cssText="font-size:11pt;font-weight:700;color:#333333;background-color:#DDDDDD";

    for (var j=0;j<=(tj-1);j++){ 
    var td=document.createElement("TD")  ;
    tr.appendChild(td); td.innerText=glc[j];
    } for (var i=0;i<=(ti-1);i++){ 
    var tr=document.createElement("TR");
    tbody.appendChild(tr) ; if (i&1) tr.style.cssText="font-size:11pt;color:#333333;background-color:#FFFFFF";
    else  tr.style.cssText="font-size:11pt;color:#333333;background-color:#EEEEEE";
    tr.align="center"; for (var j=0;j<=(tj-1);j++){ 
    var td=document.createElement("TD")  ;
    tr.appendChild(td);
    // td.innerText="g:"+tj+";"+i*tj+";"+j;
    // td.innerHTML="<SPAN CONTENTEDITABLE STYLE='height:100%;width:100%;'>"+glc[tj+i*tj+j]+"<SPAN>";
    td.innerHTML="<SPAN id=\"msgbox\" CONTENTEDITABLE=true STYLE=\"height:100%;width:100%;\" "+
         "onbeforeeditfocus=\"this.oldData=this.firstChild.data\" "+
         "onblur=\'this.oldData==this.firstChild.data?void(0):this.style.backgroundColor=\"#AAAADD\";\'>"+
         glc[tj+i*tj+j]+"</SPAN>";  
    td.onmouseover=function()
    {
    this.parentNode.style.backgroundColor ="#DDDDFF";
    grow = this.parentNode.rowIndex+1; //TH

    td.onmouseout=function()
    {
    if (grow&1) this.parentNode.style.backgroundColor="#FFFFFF";
    else     this.parentNode.style.backgroundColor="#EEEEEE";

    }
    } </script><script defer>
    var p=document.createElement("P") 
     
    document.body.appendChild(p)  ;
    p.style.cssText="font-family:'Webdings';font-size:11pt;font-weight:700;color:#333333;background-color:#DDDDDD";
    p.align="center";
    p.innerHTML="<a href=''>&#55;</a> <a href=''>&#51;</a> <a href=''>&#52;</a> <a href=''>&#56;</a>";</script>
    <body>
    动态生成表格,并用数组变量填充. Gu Laicheng, 2007.11.29<BR/>
    并且每个单元格可以被编辑;修改之后单元里的文字变颜色.<BR/>
    ARRAY 的第一行为标题,ti为行数,tj为列数<BR/>
    共有ti*tj个单元<BR/>
    加分页功能.<BR/>
    提交后将修改后的内容保存到服务器。<input type=button name=submit value=submit onclick="sm();">
    </body>
      

  3.   

    zhucekunnan  
    请接分.