18 个解决方案
#1
用代理,
a.AppendText("[<td width=57% nowrap height=16 colspan=2>]"+docA.remote_user(0)+"[</td>]")
(a是一个rtf域,你要显示的表格中的一行可以自己把它像上面的方式固定死,也可以用循环的方式把它输出,这样,表格的一行就出来了,然后再外面套一个while语句,就可以显示多行了)
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属性内容,从而实现动态表格
<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])
}
}
}
}
/**
* 插入一行 ( 表格的最后一行之后 )
*
*/
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格式,用"^"分割列、"~"分割行,将所得到的数据存储到域中。
有新增/修改/删除/确定/取消功能
主要用Javascript/HTML/DHTML
将所得到的数据组织成1^2^3^4^5~5^4^3^2^1格式,用"^"分割列、"~"分割行,将所得到的数据存储到域中。
#11
主要使用Div
DIV.innerHTML="..."
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%'> </TD>"
sz1="<TR bgColor=#F9FBFC><TD width=3%> </TD><TD align=middle height=20 width=3%> </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> "+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> <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> <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> <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>    <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> <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
}
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%'> </TD>"
sz1="<TR bgColor=#F9FBFC><TD width=3%> </TD><TD align=middle height=20 width=3%> </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> "+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> <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> <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> <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>    <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> <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>
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语句,就可以显示多行了)
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属性内容,从而实现动态表格
<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])
}
}
}
}
/**
* 插入一行 ( 表格的最后一行之后 )
*
*/
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格式,用"^"分割列、"~"分割行,将所得到的数据存储到域中。
有新增/修改/删除/确定/取消功能
主要用Javascript/HTML/DHTML
将所得到的数据组织成1^2^3^4^5~5^4^3^2^1格式,用"^"分割列、"~"分割行,将所得到的数据存储到域中。
#11
主要使用Div
DIV.innerHTML="..."
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%'> </TD>"
sz1="<TR bgColor=#F9FBFC><TD width=3%> </TD><TD align=middle height=20 width=3%> </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> "+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> <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> <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> <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>    <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> <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
}
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%'> </TD>"
sz1="<TR bgColor=#F9FBFC><TD width=3%> </TD><TD align=middle height=20 width=3%> </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> "+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> <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> <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> <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>    <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> <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>
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
真是太感谢了,我正在试着用!谢谢大家,还有很多要向大家请教!