lotus notes中活动表格的使用

时间:2021-04-14 09:07:49
大家好,我也是刚开始接确LOTUS NOTES 6.5,现在要用它来做程序,我有不少的问题,先问一个让我头大的问题:在LOTUS NOTES 中怎样使用表格,动态表格,像在C语言中有表格控件,DATAGRID等等,用来操作关系数据库中的数据十分的方便!现在我需要在LOTUS NOTES 中操作关系数据库中的数据,所以要用到表格!我现在能做到的是,现建一个表格,然后在每个单元格内创建一个域,还得给每个域一个名称来标识这个单元格,这样操作起来很是不方便,而且这种方法对表格的行列数目是死的,不能根据需要来生成相应数目的表格!我想请教大家有没有什么好的方法呢?

18 个解决方案

#1


用代理,
a.AppendText("[<td width=57% nowrap  height=16 colspan=2>]"+docA.remote_user(0)+"[</td>]")
(a是一个rtf域,你要显示的表格中的一行可以自己把它像上面的方式固定死,也可以用循环的方式把它输出,这样,表格的一行就出来了,然后再外面套一个while语句,就可以显示多行了)

#2


我是想在LOTUS中用LOTUS SCRIPT语言能不能写来呢?还有就是,我希望对每一个表格单元都能进行控制,比如我想取出某行某列的一个表格中的值,然后将其插入关系数据库中,用这样的方法能做到吗?,多谢指教!

#3


按你的要求,可以在在一个表单打开时运行LS代理,在代理中给表单的一个域赋值,将域设为显示时计算,在代理给域赋值时写成html格式的字符串,至于要多少行和多少列就可以在程序中进行控制,这样就能显示动态表格了。

#4


代理中动态输出HTML代码

#5


没有这种方法,上面的方法是BS的,你真要想实现,只能表单+显示单个分类视图的方法来做。

#6


唉,谢谢大家,这几天我都郁闷的不行了,这个问题还是没有搞定啊!我试着用JAVASCRIPT来写程序,但对它又不熟,难!

#7


如果你用BS的话,可以把表格定义在一个div层里面,如果需要增加表格行等,只需要对div层进行操作就行了,比如你定义一个层:
<div id="mytable"></div>,
然后就可以通过动态改变document.all.mytable.innerHTML属性内容,从而实现动态表格

#8


看看DHTML吧!

#9


如:
/**
 * 插入一行 ( 表格的最后一行之后 )
 *
 */
function addRow(oTable) 
{
var oldRow = oTable.rows[oTable.rows.length - 1];
var newRow = oTable.insertRow(oTable.rows.length);
var i = 0;
var newCol;
var oldCol;
for(i=0; i<oldRow.cells.length; i++){
newCol = newRow.insertCell(i);
oldCol = oldRow.cells[i];
newCol.innerHTML = oldCol.innerHTML;
clearTdObjectValue(newCol);
copyTrOrTdObj(newCol,oldCol);
}
copyTrOrTdObj(newRow,oldRow);
}

/**
 * 
 *
 */
function copyTrOrTdObj(newObj,oldObj){
if(oldObj.getAttribute("align")!=null)
newObj.setAttribute("align",oldObj.getAttribute("align"));
if(oldObj.getAttribute("class")!=null)
newObj.setAttribute("class",oldObj.getAttribute("class"));
if(oldObj.getAttribute("height")!=null)
newObj.setAttribute("height",oldObj.getAttribute("height"));
if(oldObj.getAttribute("width")!=null)
newObj.setAttribute("width",oldObj.getAttribute("width"));
}

function clearTdObjectValue(oTd){
len = oTd.all.length;
if (typeof len=="undefined") {
} else {
        for (var i=0; i< len; i++) {
                type = oTd.all[i].type;
                if (type=="checkbox") {
                        oTd.all[i].checked = false;
                        oTd.all[i].disabled = false;
                } else if (type=="text") {
                        oTd.all[i].value = "";
                } 
        }
}
}

function clearTrObjectValue(oTr) {
for(i=0; i<oTr.cells.length; i++){
clearTdObjectValue(oTr.cells[i]);
}

}

/**
 * 删除一行或多行 ( Table表中 CheckBox 所选择的行 )
 * @para oCheckBox : 复选框对象,可以是复选框对象数组
 */

function myDelRow(oTable,Box) {
var len=oTable.rows.length;
if (typeof(Box)=="undefined") {
return false
}
if (typeof(Box.length)=="undefined") {
if (Box.checked) {
clearTrObjectValue(oTable.rows[0])
} else {
                alert('请选择要删除的记录。');
                return false;
}
}
else {
var  flag=false;
                for(var i=0;i<Box.length;i++)
                        if(Box[i].checked) flag=true;
                if(!flag)
        {
                alert('请选择要删除的记录。');
                return false;
        }

for (var i=Box.length-1;i>=0;i--) {
if (Box[i].checked) {
if (oTable.rows.length>1) 
oTable.deleteRow(i)
else
     clearTrObjectValue(oTable.rows[0])
}
}
}
}

#10


我做过这样的表格!!
有新增/修改/删除/确定/取消功能
主要用Javascript/HTML/DHTML
将所得到的数据组织成1^2^3^4^5~5^4^3^2^1格式,用"^"分割列、"~"分割行,将所得到的数据存储到域中。

#11


主要使用Div
DIV.innerHTML="..."

#12


那你能不能把你代码给我看看呢?我现在是用JAVASCRIPT在PHP中完全可以生成动态表格,但把源程序放到LOTUS NOTES中就不好使了。而且还有一个问题就是怎么样才能把表格中的内容给取出来呢,存入关系数据库中!
请你多多帮忙!

#13


DHTML完全没有用过,不过我还是得谢谢那位朋友,给出那么多代码!

#14


R6中可以用NotesRichTextTable class在RTF域中创建动态表格,也可以取到每个单元格的值,但是不能随意控制每单元格的样式如宽度、颜色,边框粗细等

#15


给你个完整的过程:
1.需要4个Lotus上的域:XMLContents(Text)保存表格数据;XMLTitle(Text)表格的标题(中文),用";"分割;XMLTitle_EN(Text)表格的标题(英文),用";"分割;Gdman(Radio)系统需要;edtJavaScript(Text)系统需要。所有的域不可隐藏,可用display:none。
2.在Form上放一个Div: <DIV ID="HTMLTitle"></DIV>。 pass-thru HTML。
3.将下面的代码粘贴到Form上:
 <DIV ID="HTMLTitle"></DIV>
<div id="ie5menu" class="skin0" onMouseover="highlightie5()" onMouseout="lowlightie5()"> 
<div class="menuitems" onclick="SetHTMLTitle('New')">新增</div>
<div class="menuitems" onclick="SetHTMLTitle('Delete')">刪除</div> 
<div class="menuitems" onclick="SetHTMLTitle('Insert')">插入</div> 
<div class="menuitems" onclick="SetHTMLTitle('Modify')">修改</div> 
<hr  style='color:#4F7A99;height:1px;align:top;'>
<div class="menuitems" onclick="Confirmopt()">確定</div> 
<div class="menuitems" onclick="SetHTMLTitle('Cancel')">取消</div> 
</div> 
<style> 
<!-- 
.skin0 { 
position:absolute; 
text-align:left; 
color:black;
width:100px; 
border:1px solid #4F7A99; 
background-color:#EEF4F7; 
font-family:Verdana; 
line-height:20px; 
cursor:default; 
visibility:hidden; 

-->
</style>
<script>
var display_url = 0;
var SaveLocalData=-1
var ActionState="NULL"
var SaveCol=0
var Temp
function SetHTMLTitle(ActionS){
var ActionS
var CONST_W=new Array; //750
CONST_W[1]=110;
CONST_W[2]=110;
CONST_W[3]=100;
CONST_W[4]=375;
ActionState=ActionS
if(document.forms(0).lan.value=="1")
Temp=document.forms(0).XMLTitle.value
else
Temp=document.forms(0).XMLTitle_EN.value
Temp=Temp.split(";")
SaveCol=Temp.length
var gifurl=location.href.substring(0,location.href.lastIndexOf('.nsf/')+5)+'Gridface.gif'
sz="<TABLE border=1 borderColor=#4F7A99 borderColorDark=#ffffff cellSpacing=0 width=760px bordercolorhight='#000000' cellspadding=0><TBODY><TR align=center style=\"background:url("+gifurl+")\"><TD width='3%'>&nbsp;</TD>"
sz1="<TR bgColor=#F9FBFC><TD width=3%>&nbsp</TD><TD align=middle height=20 width=3%>&nbsp</TD>"
for(var i=0;i<Temp.length-1;i++){
 if(i==0){
   sz+="<TD  height=20 width=3%><font Size=4>" +Temp[i]+ "</font></TD>"
   }
else{
   sz+="<TD style=\"width:"+CONST_W[i]+"px\"><font size=4>" +Temp[i]+ "</font></TD>"
   sz1+="<TD align=middle><input type=text style=\"width:"+CONST_W[i]+"px\" name='edtJavaScript'></TD>"
}
}
sz+="</TR>"
sz1+="</TR>"

var disabledYN1=""
var disabledYN2="disabled"
var disabledYN3="disabled"
switch(ActionState) {
  case "New": {
     disabledYN1="disabled"
     disabledYN3=""
     break
  }
  case "Delete":{
     disabledYN1="disabled"
     disabledYN2="disabled"
     disabledYN3=""
     break
  }
  case "Insert":{
     disabledYN1="disabled"
     disabledYN2="disabled"
     disabledYN3=""
     break
  }
  case "Modify":{
     disabledYN1="disabled"
     disabledYN2="disabled"
     disabledYN3=""
     break
  }
  case "Cancel":{
     SaveLocalData=-1
     break
  }
}

Temp=document.forms(0).XMLContents.value
Temp=Temp.split("^")
for(i=0;i<Temp.length-1;i++){
if(i==SaveLocalData-1 && ActionState=="Insert")sz+=sz1
var Tempi=Temp[i]
var SaveT="Selected"

if(i==SaveLocalData-1){
  SaveT="Checked=true "+disabledYN1
}
else{
  SaveT=disabledYN1
}
if (Tempi!=""){
sz+="<TR bgColor=#F9FBFC  oncontextmenu=SetFlag(this.value);showmenuie5();window.event.returnValue=false  value="+(i+1)+" onclick=SetFlag(this.value) onmouseout=\"this.style.background='#F9FBFC'\" onmouseover=\"this.style.background='#E2EBEF'\" style=\"CURSOR: hand; \"><TD align=middle height=20 width=3%><INPUT TYPE=radio NAME=_Gdman ID=S"+(i+1)+" VALUE="+(i+1)+" onclick=SetFlag(this.value) "+SaveT+"></TD><TD align=middle height=20 width=3%>"+(i+1)+"</TD>"
Tempi=Tempi.split("~")
   for(var j=0;j<Tempi.length-1;j++){
 if(i==SaveLocalData-1 && ActionState=="Modify")
       sz+="<TD align=middle><input type=text style=\"width:"+CONST_W[j+1]+"px\" name='edtJavaScript' value='"+Tempi[j]+"'></TD>"
     else
       sz+="<TD align=middle style=\"width:"+CONST_W[j+1]+"px height:20px\" ><Font Size=2 Color=Blue>&nbsp"+Tempi[j]+"</Font></TD>"
     
     
   }
}
sz+="</TR>"
}
if(document.forms(0).lan.value=="1"){
var CONSTNEW="<b>新增</b>"
var CONSTDELETE="<b>删除</b>"
var CONSTMODIFY="<b>修改</b>"
var CONSTINSERT="<b>插入</b>"
var CONSTCONFIRM="<b>确定</b>"
var CONSTCANCEL="<b>取消</b>"
}
else{
var CONSTNEW="<b>New</b>"
var CONSTDELETE="<b>Delete</b>"
var CONSTMODIFY="<b>Modify</b>"
var CONSTINSERT="<b>Insert</b>"
var CONSTCONFIRM="<b>Confirm</b>"
var CONSTCANCEL="<b>Cancel</b>"
}
var gifurl=location.href.substring(0,location.href.lastIndexOf('.nsf/')+5)+'Buttonface.gif'
if(ActionState=="New")sz+=sz1 

if(document.forms(0).XMLContents.id!="Java" && document.forms(0).DCcurStepNO.value<1)
sz+="<TR><TD COLSPAN="+SaveCol+"><span id=btnNew  style=\"cursor:hand;text-align:center;padding-top: 4px;font-size:12;color:black;width:94; height:22;background:url("+gifurl+")\" onclick=\"SetHTMLTitle('New')\" "+disabledYN1+"><a cursor=hand><font color='black'>"+CONSTNEW+"</font></a></span>&nbsp<span id=btnDelete  style=\"cursor:hand;text-align:center;padding-top: 4px;font-size:12;color:black;width:94; height:22;background:url("+gifurl+")\" onclick=\"SetHTMLTitle('Delete')\" "+disabledYN2+"><a cursor=hand><font color='black'>"+CONSTDELETE+"</font></a></span>&nbsp<span id=btnInsert  style=\"cursor:hand;text-align:center;padding-top: 4px;font-size:12;color:black;width:94; height:22;background:url("+gifurl+")\" onclick=\"SetHTMLTitle('Insert')\" "+disabledYN2+"><a cursor=hand><font color='black'>"+CONSTINSERT+"</font></a></span>&nbsp<span id=btnModify  style=\"cursor:hand;text-align:center;padding-top: 4px;font-size:12;color:black;width:94; height:22;background:url("+gifurl+")\" onclick=\"SetHTMLTitle('Modify')\" "+disabledYN2+"><a cursor=hand><font color='black'>"+CONSTMODIFY+"</font></a></span>&nbsp&nbsp&nbsp&nbsp<span id=btnConfirm  style=\"cursor:hand;text-align:center;padding-top: 4px;font-size:12;color:black;width:94; height:22;background:url("+gifurl+")\" onclick=\"Confirmopt()\"  "+disabledYN3+"><a cursor=hand><font color='black'>"+CONSTCONFIRM+"</font></a></span>&nbsp<span id=btnCancel  style=\"cursor:hand;text-align:center;padding-top: 4px;font-size:12;color:black;width:94; height:22;background:url("+gifurl+")\" onclick=\"SetHTMLTitle('Cancel')\" "+disabledYN3+"><a cursor=hand><font color='black'>"+CONSTCANCEL+"</font></a></span></TD></TR></Table>"
HTMLTitle.innerHTML=sz
}  



function SetFlag(LocalData){
if (document.forms(0).XMLContents.id=="Java"||document.forms(0).S1.disabled)return(0)

if(LocalData==1)
  document.forms(0).S1.checked=true
else
  document.forms(0)._Gdman[LocalData-1].checked=true
var LocalData
var Temp
SaveLocalData=LocalData
Temp=document.forms(0).XMLContents.value
Temp=Temp.split("^")[LocalData-1]
Temp=Temp.split("~")
if(document.all('btnDelete'))document.all('btnDelete').disabled=false
if(document.forms(0).all('btnInsert'))document.forms(0).all('btnInsert').disabled=false
if(document.forms(0).all('btnModify'))document.forms(0).all('btnModify').disabled=false
}

#16


function Confirmopt(){
var SaveGridText=""
var SaveContents=""
switch(ActionState){
    case "New": {
        for (var i=1;i<SaveCol-1;i++){
             SaveGridText+=document.forms(0).edtJavaScript[i].value+"~"
        }
        document.forms(0).XMLContents.value+=SaveGridText+"^"
        break
    }
    case "Delete":{
        Temp=document.forms(0).XMLContents.value
        Temp=Temp.split("^")
        for(i=0;i<Temp.length-1;i++){
           if(i!=SaveLocalData-1) SaveGridText+=Temp[i]+"^"
        }
        document.forms(0).XMLContents.value=SaveGridText
        break
    }
    case "Modify":{
        for (var i=1;i<SaveCol-1;i++){
            SaveGridText+=document.forms(0).edtJavaScript[i].value+"~"
        }
        Temp=document.forms(0).XMLContents.value
        Temp=Temp.split("^")
        for(i=0;i<Temp.length-1;i++){
           if(i!=(SaveLocalData-1)) 
              SaveContents+=Temp[i]+"^"
           else
              SaveContents+=SaveGridText+"^" 
        }
        document.forms(0).XMLContents.value=SaveContents
        break
    }
    case "Insert":{
        for (var i=1;i<SaveCol-1;i++){
             SaveGridText+=document.forms(0).edtJavaScript[i].value+"~"
        }
        Temp=document.forms(0).XMLContents.value
        Temp=Temp.split("^")
        for(i=0;i<Temp.length-1;i++){
           if(i==(SaveLocalData-1)) 
              SaveContents+=SaveGridText+"^" 
           SaveContents+=Temp[i]+"^"
        }
        document.forms(0).XMLContents.value=SaveContents
        break 
    } 
}
SetHTMLTitle("Cancel")
}
function showmenuie5() {
return(0) 
if(document.forms(0).XMLContents.id=="Java") return(0)
var rightedge = document.body.clientWidth-event.clientX; 
var bottomedge = document.body.clientHeight-event.clientY; 
if (rightedge < ie5menu.offsetWidth) 
ie5menu.style.left = document.body.scrollLeft + event.clientX - ie5menu.offsetWidth; 
else 
ie5menu.style.left = document.body.scrollLeft + event.clientX; 
if (bottomedge < ie5menu.offsetHeight) 
ie5menu.style.top = document.body.scrollTop + event.clientY - ie5menu.offsetHeight; 
else 
ie5menu.style.top = document.body.scrollTop + event.clientY; 
ie5menu.style.visibility = "visible"; 
return false; 


function hidemenuie5() { 
ie5menu.style.visibility = "hidden"; 

function highlightie5() { 
if (event.srcElement.className == "menuitems") { 
event.srcElement.style.backgroundColor ='#4F7A99'; 
event.srcElement.style.color = "white"; 
if (display_url) 
window.status = event.srcElement.url; 
  } 

function lowlightie5() { 
if (event.srcElement.className == "menuitems") { 
event.srcElement.style.backgroundColor = ""; 
event.srcElement.style.color = "black"; 
window.status = ""; 
  } 

</script>
<script>
SetHTMLTitle("NULL")
if (document.all && window.print) { 
ie5menu.className = "skin0";
document.body.onclick = hidemenuie5;
}  
</script>

#17


还有几张图片,没办法给你了。

#18


真是太感谢了,我正在试着用!谢谢大家,还有很多要向大家请教!

#1


用代理,
a.AppendText("[<td width=57% nowrap  height=16 colspan=2>]"+docA.remote_user(0)+"[</td>]")
(a是一个rtf域,你要显示的表格中的一行可以自己把它像上面的方式固定死,也可以用循环的方式把它输出,这样,表格的一行就出来了,然后再外面套一个while语句,就可以显示多行了)

#2


我是想在LOTUS中用LOTUS SCRIPT语言能不能写来呢?还有就是,我希望对每一个表格单元都能进行控制,比如我想取出某行某列的一个表格中的值,然后将其插入关系数据库中,用这样的方法能做到吗?,多谢指教!

#3


按你的要求,可以在在一个表单打开时运行LS代理,在代理中给表单的一个域赋值,将域设为显示时计算,在代理给域赋值时写成html格式的字符串,至于要多少行和多少列就可以在程序中进行控制,这样就能显示动态表格了。

#4


代理中动态输出HTML代码

#5


没有这种方法,上面的方法是BS的,你真要想实现,只能表单+显示单个分类视图的方法来做。

#6


唉,谢谢大家,这几天我都郁闷的不行了,这个问题还是没有搞定啊!我试着用JAVASCRIPT来写程序,但对它又不熟,难!

#7


如果你用BS的话,可以把表格定义在一个div层里面,如果需要增加表格行等,只需要对div层进行操作就行了,比如你定义一个层:
<div id="mytable"></div>,
然后就可以通过动态改变document.all.mytable.innerHTML属性内容,从而实现动态表格

#8


看看DHTML吧!

#9


如:
/**
 * 插入一行 ( 表格的最后一行之后 )
 *
 */
function addRow(oTable) 
{
var oldRow = oTable.rows[oTable.rows.length - 1];
var newRow = oTable.insertRow(oTable.rows.length);
var i = 0;
var newCol;
var oldCol;
for(i=0; i<oldRow.cells.length; i++){
newCol = newRow.insertCell(i);
oldCol = oldRow.cells[i];
newCol.innerHTML = oldCol.innerHTML;
clearTdObjectValue(newCol);
copyTrOrTdObj(newCol,oldCol);
}
copyTrOrTdObj(newRow,oldRow);
}

/**
 * 
 *
 */
function copyTrOrTdObj(newObj,oldObj){
if(oldObj.getAttribute("align")!=null)
newObj.setAttribute("align",oldObj.getAttribute("align"));
if(oldObj.getAttribute("class")!=null)
newObj.setAttribute("class",oldObj.getAttribute("class"));
if(oldObj.getAttribute("height")!=null)
newObj.setAttribute("height",oldObj.getAttribute("height"));
if(oldObj.getAttribute("width")!=null)
newObj.setAttribute("width",oldObj.getAttribute("width"));
}

function clearTdObjectValue(oTd){
len = oTd.all.length;
if (typeof len=="undefined") {
} else {
        for (var i=0; i< len; i++) {
                type = oTd.all[i].type;
                if (type=="checkbox") {
                        oTd.all[i].checked = false;
                        oTd.all[i].disabled = false;
                } else if (type=="text") {
                        oTd.all[i].value = "";
                } 
        }
}
}

function clearTrObjectValue(oTr) {
for(i=0; i<oTr.cells.length; i++){
clearTdObjectValue(oTr.cells[i]);
}

}

/**
 * 删除一行或多行 ( Table表中 CheckBox 所选择的行 )
 * @para oCheckBox : 复选框对象,可以是复选框对象数组
 */

function myDelRow(oTable,Box) {
var len=oTable.rows.length;
if (typeof(Box)=="undefined") {
return false
}
if (typeof(Box.length)=="undefined") {
if (Box.checked) {
clearTrObjectValue(oTable.rows[0])
} else {
                alert('请选择要删除的记录。');
                return false;
}
}
else {
var  flag=false;
                for(var i=0;i<Box.length;i++)
                        if(Box[i].checked) flag=true;
                if(!flag)
        {
                alert('请选择要删除的记录。');
                return false;
        }

for (var i=Box.length-1;i>=0;i--) {
if (Box[i].checked) {
if (oTable.rows.length>1) 
oTable.deleteRow(i)
else
     clearTrObjectValue(oTable.rows[0])
}
}
}
}

#10


我做过这样的表格!!
有新增/修改/删除/确定/取消功能
主要用Javascript/HTML/DHTML
将所得到的数据组织成1^2^3^4^5~5^4^3^2^1格式,用"^"分割列、"~"分割行,将所得到的数据存储到域中。

#11


主要使用Div
DIV.innerHTML="..."

#12


那你能不能把你代码给我看看呢?我现在是用JAVASCRIPT在PHP中完全可以生成动态表格,但把源程序放到LOTUS NOTES中就不好使了。而且还有一个问题就是怎么样才能把表格中的内容给取出来呢,存入关系数据库中!
请你多多帮忙!

#13


DHTML完全没有用过,不过我还是得谢谢那位朋友,给出那么多代码!

#14


R6中可以用NotesRichTextTable class在RTF域中创建动态表格,也可以取到每个单元格的值,但是不能随意控制每单元格的样式如宽度、颜色,边框粗细等

#15


给你个完整的过程:
1.需要4个Lotus上的域:XMLContents(Text)保存表格数据;XMLTitle(Text)表格的标题(中文),用";"分割;XMLTitle_EN(Text)表格的标题(英文),用";"分割;Gdman(Radio)系统需要;edtJavaScript(Text)系统需要。所有的域不可隐藏,可用display:none。
2.在Form上放一个Div: <DIV ID="HTMLTitle"></DIV>。 pass-thru HTML。
3.将下面的代码粘贴到Form上:
 <DIV ID="HTMLTitle"></DIV>
<div id="ie5menu" class="skin0" onMouseover="highlightie5()" onMouseout="lowlightie5()"> 
<div class="menuitems" onclick="SetHTMLTitle('New')">新增</div>
<div class="menuitems" onclick="SetHTMLTitle('Delete')">刪除</div> 
<div class="menuitems" onclick="SetHTMLTitle('Insert')">插入</div> 
<div class="menuitems" onclick="SetHTMLTitle('Modify')">修改</div> 
<hr  style='color:#4F7A99;height:1px;align:top;'>
<div class="menuitems" onclick="Confirmopt()">確定</div> 
<div class="menuitems" onclick="SetHTMLTitle('Cancel')">取消</div> 
</div> 
<style> 
<!-- 
.skin0 { 
position:absolute; 
text-align:left; 
color:black;
width:100px; 
border:1px solid #4F7A99; 
background-color:#EEF4F7; 
font-family:Verdana; 
line-height:20px; 
cursor:default; 
visibility:hidden; 

-->
</style>
<script>
var display_url = 0;
var SaveLocalData=-1
var ActionState="NULL"
var SaveCol=0
var Temp
function SetHTMLTitle(ActionS){
var ActionS
var CONST_W=new Array; //750
CONST_W[1]=110;
CONST_W[2]=110;
CONST_W[3]=100;
CONST_W[4]=375;
ActionState=ActionS
if(document.forms(0).lan.value=="1")
Temp=document.forms(0).XMLTitle.value
else
Temp=document.forms(0).XMLTitle_EN.value
Temp=Temp.split(";")
SaveCol=Temp.length
var gifurl=location.href.substring(0,location.href.lastIndexOf('.nsf/')+5)+'Gridface.gif'
sz="<TABLE border=1 borderColor=#4F7A99 borderColorDark=#ffffff cellSpacing=0 width=760px bordercolorhight='#000000' cellspadding=0><TBODY><TR align=center style=\"background:url("+gifurl+")\"><TD width='3%'>&nbsp;</TD>"
sz1="<TR bgColor=#F9FBFC><TD width=3%>&nbsp</TD><TD align=middle height=20 width=3%>&nbsp</TD>"
for(var i=0;i<Temp.length-1;i++){
 if(i==0){
   sz+="<TD  height=20 width=3%><font Size=4>" +Temp[i]+ "</font></TD>"
   }
else{
   sz+="<TD style=\"width:"+CONST_W[i]+"px\"><font size=4>" +Temp[i]+ "</font></TD>"
   sz1+="<TD align=middle><input type=text style=\"width:"+CONST_W[i]+"px\" name='edtJavaScript'></TD>"
}
}
sz+="</TR>"
sz1+="</TR>"

var disabledYN1=""
var disabledYN2="disabled"
var disabledYN3="disabled"
switch(ActionState) {
  case "New": {
     disabledYN1="disabled"
     disabledYN3=""
     break
  }
  case "Delete":{
     disabledYN1="disabled"
     disabledYN2="disabled"
     disabledYN3=""
     break
  }
  case "Insert":{
     disabledYN1="disabled"
     disabledYN2="disabled"
     disabledYN3=""
     break
  }
  case "Modify":{
     disabledYN1="disabled"
     disabledYN2="disabled"
     disabledYN3=""
     break
  }
  case "Cancel":{
     SaveLocalData=-1
     break
  }
}

Temp=document.forms(0).XMLContents.value
Temp=Temp.split("^")
for(i=0;i<Temp.length-1;i++){
if(i==SaveLocalData-1 && ActionState=="Insert")sz+=sz1
var Tempi=Temp[i]
var SaveT="Selected"

if(i==SaveLocalData-1){
  SaveT="Checked=true "+disabledYN1
}
else{
  SaveT=disabledYN1
}
if (Tempi!=""){
sz+="<TR bgColor=#F9FBFC  oncontextmenu=SetFlag(this.value);showmenuie5();window.event.returnValue=false  value="+(i+1)+" onclick=SetFlag(this.value) onmouseout=\"this.style.background='#F9FBFC'\" onmouseover=\"this.style.background='#E2EBEF'\" style=\"CURSOR: hand; \"><TD align=middle height=20 width=3%><INPUT TYPE=radio NAME=_Gdman ID=S"+(i+1)+" VALUE="+(i+1)+" onclick=SetFlag(this.value) "+SaveT+"></TD><TD align=middle height=20 width=3%>"+(i+1)+"</TD>"
Tempi=Tempi.split("~")
   for(var j=0;j<Tempi.length-1;j++){
 if(i==SaveLocalData-1 && ActionState=="Modify")
       sz+="<TD align=middle><input type=text style=\"width:"+CONST_W[j+1]+"px\" name='edtJavaScript' value='"+Tempi[j]+"'></TD>"
     else
       sz+="<TD align=middle style=\"width:"+CONST_W[j+1]+"px height:20px\" ><Font Size=2 Color=Blue>&nbsp"+Tempi[j]+"</Font></TD>"
     
     
   }
}
sz+="</TR>"
}
if(document.forms(0).lan.value=="1"){
var CONSTNEW="<b>新增</b>"
var CONSTDELETE="<b>删除</b>"
var CONSTMODIFY="<b>修改</b>"
var CONSTINSERT="<b>插入</b>"
var CONSTCONFIRM="<b>确定</b>"
var CONSTCANCEL="<b>取消</b>"
}
else{
var CONSTNEW="<b>New</b>"
var CONSTDELETE="<b>Delete</b>"
var CONSTMODIFY="<b>Modify</b>"
var CONSTINSERT="<b>Insert</b>"
var CONSTCONFIRM="<b>Confirm</b>"
var CONSTCANCEL="<b>Cancel</b>"
}
var gifurl=location.href.substring(0,location.href.lastIndexOf('.nsf/')+5)+'Buttonface.gif'
if(ActionState=="New")sz+=sz1 

if(document.forms(0).XMLContents.id!="Java" && document.forms(0).DCcurStepNO.value<1)
sz+="<TR><TD COLSPAN="+SaveCol+"><span id=btnNew  style=\"cursor:hand;text-align:center;padding-top: 4px;font-size:12;color:black;width:94; height:22;background:url("+gifurl+")\" onclick=\"SetHTMLTitle('New')\" "+disabledYN1+"><a cursor=hand><font color='black'>"+CONSTNEW+"</font></a></span>&nbsp<span id=btnDelete  style=\"cursor:hand;text-align:center;padding-top: 4px;font-size:12;color:black;width:94; height:22;background:url("+gifurl+")\" onclick=\"SetHTMLTitle('Delete')\" "+disabledYN2+"><a cursor=hand><font color='black'>"+CONSTDELETE+"</font></a></span>&nbsp<span id=btnInsert  style=\"cursor:hand;text-align:center;padding-top: 4px;font-size:12;color:black;width:94; height:22;background:url("+gifurl+")\" onclick=\"SetHTMLTitle('Insert')\" "+disabledYN2+"><a cursor=hand><font color='black'>"+CONSTINSERT+"</font></a></span>&nbsp<span id=btnModify  style=\"cursor:hand;text-align:center;padding-top: 4px;font-size:12;color:black;width:94; height:22;background:url("+gifurl+")\" onclick=\"SetHTMLTitle('Modify')\" "+disabledYN2+"><a cursor=hand><font color='black'>"+CONSTMODIFY+"</font></a></span>&nbsp&nbsp&nbsp&nbsp<span id=btnConfirm  style=\"cursor:hand;text-align:center;padding-top: 4px;font-size:12;color:black;width:94; height:22;background:url("+gifurl+")\" onclick=\"Confirmopt()\"  "+disabledYN3+"><a cursor=hand><font color='black'>"+CONSTCONFIRM+"</font></a></span>&nbsp<span id=btnCancel  style=\"cursor:hand;text-align:center;padding-top: 4px;font-size:12;color:black;width:94; height:22;background:url("+gifurl+")\" onclick=\"SetHTMLTitle('Cancel')\" "+disabledYN3+"><a cursor=hand><font color='black'>"+CONSTCANCEL+"</font></a></span></TD></TR></Table>"
HTMLTitle.innerHTML=sz
}  



function SetFlag(LocalData){
if (document.forms(0).XMLContents.id=="Java"||document.forms(0).S1.disabled)return(0)

if(LocalData==1)
  document.forms(0).S1.checked=true
else
  document.forms(0)._Gdman[LocalData-1].checked=true
var LocalData
var Temp
SaveLocalData=LocalData
Temp=document.forms(0).XMLContents.value
Temp=Temp.split("^")[LocalData-1]
Temp=Temp.split("~")
if(document.all('btnDelete'))document.all('btnDelete').disabled=false
if(document.forms(0).all('btnInsert'))document.forms(0).all('btnInsert').disabled=false
if(document.forms(0).all('btnModify'))document.forms(0).all('btnModify').disabled=false
}

#16


function Confirmopt(){
var SaveGridText=""
var SaveContents=""
switch(ActionState){
    case "New": {
        for (var i=1;i<SaveCol-1;i++){
             SaveGridText+=document.forms(0).edtJavaScript[i].value+"~"
        }
        document.forms(0).XMLContents.value+=SaveGridText+"^"
        break
    }
    case "Delete":{
        Temp=document.forms(0).XMLContents.value
        Temp=Temp.split("^")
        for(i=0;i<Temp.length-1;i++){
           if(i!=SaveLocalData-1) SaveGridText+=Temp[i]+"^"
        }
        document.forms(0).XMLContents.value=SaveGridText
        break
    }
    case "Modify":{
        for (var i=1;i<SaveCol-1;i++){
            SaveGridText+=document.forms(0).edtJavaScript[i].value+"~"
        }
        Temp=document.forms(0).XMLContents.value
        Temp=Temp.split("^")
        for(i=0;i<Temp.length-1;i++){
           if(i!=(SaveLocalData-1)) 
              SaveContents+=Temp[i]+"^"
           else
              SaveContents+=SaveGridText+"^" 
        }
        document.forms(0).XMLContents.value=SaveContents
        break
    }
    case "Insert":{
        for (var i=1;i<SaveCol-1;i++){
             SaveGridText+=document.forms(0).edtJavaScript[i].value+"~"
        }
        Temp=document.forms(0).XMLContents.value
        Temp=Temp.split("^")
        for(i=0;i<Temp.length-1;i++){
           if(i==(SaveLocalData-1)) 
              SaveContents+=SaveGridText+"^" 
           SaveContents+=Temp[i]+"^"
        }
        document.forms(0).XMLContents.value=SaveContents
        break 
    } 
}
SetHTMLTitle("Cancel")
}
function showmenuie5() {
return(0) 
if(document.forms(0).XMLContents.id=="Java") return(0)
var rightedge = document.body.clientWidth-event.clientX; 
var bottomedge = document.body.clientHeight-event.clientY; 
if (rightedge < ie5menu.offsetWidth) 
ie5menu.style.left = document.body.scrollLeft + event.clientX - ie5menu.offsetWidth; 
else 
ie5menu.style.left = document.body.scrollLeft + event.clientX; 
if (bottomedge < ie5menu.offsetHeight) 
ie5menu.style.top = document.body.scrollTop + event.clientY - ie5menu.offsetHeight; 
else 
ie5menu.style.top = document.body.scrollTop + event.clientY; 
ie5menu.style.visibility = "visible"; 
return false; 


function hidemenuie5() { 
ie5menu.style.visibility = "hidden"; 

function highlightie5() { 
if (event.srcElement.className == "menuitems") { 
event.srcElement.style.backgroundColor ='#4F7A99'; 
event.srcElement.style.color = "white"; 
if (display_url) 
window.status = event.srcElement.url; 
  } 

function lowlightie5() { 
if (event.srcElement.className == "menuitems") { 
event.srcElement.style.backgroundColor = ""; 
event.srcElement.style.color = "black"; 
window.status = ""; 
  } 

</script>
<script>
SetHTMLTitle("NULL")
if (document.all && window.print) { 
ie5menu.className = "skin0";
document.body.onclick = hidemenuie5;
}  
</script>

#17


还有几张图片,没办法给你了。

#18


真是太感谢了,我正在试着用!谢谢大家,还有很多要向大家请教!