📄 editfile_adv.asp
字号:
{
value += (i==0) ? "info =" : "";
value += " \"" + valArr[i];
value += (i!=valArr.length-1) ? "\" +\"\\n\"+\n" : "\";\n" ;
}
value+="\n//document.write(info);";
value+="\nwindow.innerCode1.innerHTML=info;";
value+="\n//-->"+"\n"+"<"+"/SCRIPT>";
val.value = value;
}
//-->
</SCRIPT>
<SCRIPT LANGUAGE="JavaScript">
<!--
function refreshframe(num) //刷新左框架目录同步当前于编辑文件位置
{var obj=document.form2;
if(window.parent.leftFrame)
window.parent.leftFrame.location.href='getFolders.asp?path=<%=GetPathDir%>';
if(window.parent.bottomFrame)
window.parent.bottomFrame.location.href='getFiles.asp?path=<%=GetPathDir%>';
if(!obj.content.value)return;
if(num==1)OpenFile(); //num==1 则reload 当前文件
}
function reloadfile() //重新读入当前编辑文件,同步刷新当前编辑文件目录
{
var obj=document.form2;
if(!obj.content.value)return;
if(!confirm('确定要重载入当前文件吗?'))return;
if(window.parent.leftFrame){window.parent.leftFrame.location.href='getFolders.asp?path=<%=GetPathDir%>';}
if(window.parent.bottomFrame){window.parent.bottomFrame.location.href='getFiles.asp?path=<%=GetPathDir%>';}
OpenFile();
}
function runCode(num) //运行代码HTML
{
// var code=event.srcElement.parentElement.children[0].value;
if(num==1){var code=window.form2.code.innerText;}
if(num==0){var code=window.form2.content.innerText;}
var newwin=window.open('','','');
newwin.opener = null
newwin.document.write(code);
newwin.document.close();
}
function runASPcode() //运行ASP脚本代码 写当前目录位置,重定向当前代码文件
{
var obj;
obj=document.form2;
var runurl='<%=GetFilePath+"RunAsp.asp?path="+GetPath%>';
var str='ASPreview.asp';
if(!str)return;
if(obj.content.value=="")return;
obj.action=runurl+'&action=runASPcode&to='+str;
obj.target='_blank'
obj.submit();
}
function MkCodeFile(newdocs,op) //建立脚本文件,op制定建立类型id标识
{
var obj=document.form2;
var thebaseurl='<%=GetFileName%>';
var baseurldir='<%=GetPathDir%>';
str=prompt('新建文本文件:',newdocs)
if(!str)return;
if(obj.filepath1.value=="") //给定选择路径不存在为空值
{
obj.action=thebaseurl+'?path='+baseurldir+'&action=MkCodeFile&Option='+op+'&to='+str;
}
else
{
obj.action=thebaseurl+'?path='+obj.filepath1.value+'&action=MkCodeFile&Option='+op+'&to='+str;
}
obj.submit();
}
//-->
</SCRIPT>
<Script Language="JavaScript">
<!--
function getfile() //浏览读取文件,option=6 标识读取后返回当前窗口
{
var obj=document.form2;
window.open('getfile.asp?path='+obj.filepath1.value+'&Option=6','_self');
}
function aboutme()
{
window.showModalDialog("aboutme.asp","","dialogWidth:300px;dialogHeight:400px;dialogleft:200;dialogtop:200;scroll:no;status:no;help:no");
}
//-->
</Script>
<Script Language="JavaScript">
<!--
var lg_strback;
lg_strback='';
function OpenFile() //打开当前文件
{ var obj=document.form2;
if(!obj.filepath.value)
{
alert('请输入文件路径!');
return;
}
obj.action='<%=GetFileName%>?action=OpenIt&path='+document.form2.filepath.value;
obj.submit();
}
function SaveFile() //保存当前文件
{ var str;
var obj=document.form2;
var filename=obj.filename1.value;
if(!obj.filepath.value)
{
alert('请输入文件路径!');
return;
}
else if(!filename)
{
if (!obj.content.value)return;
filename='newdocument.txt';
str=prompt('另存文件',obj.filepath1.value+filename)
if(!str)return;
obj.action='<%=GetFileName%>?action=SaveIt&Option=5&path='+str;
}
else
{obj.action='<%=GetFileName%>?action=SaveIt&Option=5&path='+document.form2.filepath.value;}
obj.submit();
}
function SaveItAs() //另存到当前选定的目录位置文件
{
var str;
var obj=document.form2
var filename=obj.filename1.value;
if (filename==''){filename='newdocument.txt';}
str=prompt('另存文件',obj.filepath1.value+filename)
if(!str)return;
obj.action='<%=GetFileName%>?action=SaveIt&Option=5&path='+str;
obj.submit();
}
function Undo() //undo替换操作
{
var str;
if(lg_strback=='')
{alert('无撤消数据,不能退回上一步');return;}
str=window.form2.content.innerText;
window.form2.content.innerText=lg_strback;
lg_strback=str;
}
function ReplaceTEXT() //编辑区文本替换
{
var i1,i2,str,strLeft,strRight,strMid;
strLeft=window.form2.repLeft.innerText;
strRight=window.form2.repRight.value;
strMid=window.form2.repMid.innerText;
str=window.form2.content.innerText;
lg_strback=str;
i1=0;
i2=0;
if(strLeft=='')
return;
if(strRight=='')
{
strMid=Repit(strMid,'[$]',strLeft);
str=Repit(str,strLeft,strMid);
}
else
while(1)
{
i1=str.indexOf(strLeft,i1);
if(i1<0)
break;
i2=str.indexOf(strRight,i1+strLeft.length);
if(i2<0)
break;
str1=str.substring(i1+strLeft.length,i2);
str2=Repit(strMid,'[$]',str1);
str1=strLeft+str1+strRight;
if(!window.form2.isRemove.checked)
{
str2=strLeft+str2;
str=str.replace(str1,str2+strRight);
}
else
str=str.replace(str1,str2);
i1+=str2.length;
}
window.form2.content.innerText=str;
}
function Repit(mstr,sstr,tstr)
{
var i;
i=0;
if(mstr==''||sstr=='')
return '';
while(1)
{
i=mstr.indexOf(sstr,i);
if(i<0)break;
mstr=mstr.replace(sstr,tstr);
i+=tstr.length;
}
return mstr;
}
//-->
</Script>
<Script Language="JavaScript">
<!--
function editTab() //table键缩排,Ctrl+Break 选择区域反向缩排
{if (form2.TabKeyON.value==1)
{
var code, sel, tmp, r;
var tabs="";
event.returnValue = false;
sel =event.srcElement.document.selection.createRange();
r = event.srcElement.createTextRange();
switch (event.keyCode)
{
case (8) :
if (!event.ctrlKey)
{
event.returnValue = true;
return;
}
code = sel.text;
tmp = sel.duplicate();
tmp.moveToPoint(r.getBoundingClientRect().left, sel.getClientRects()[0].top);
sel.setEndPoint("startToStart", tmp);
sel.text = sel.text.replace(/^\t/gm, "");
code = code.replace(/^\t/gm, "").replace(/\r\n/g, "\r");
r.findText(code);
r.select();
break;
case (9) :
if (sel.getClientRects().length > 1)
{
code = sel.text;
tmp = sel.duplicate();
tmp.moveToPoint(r.getBoundingClientRect().left, sel.getClientRects()[0].top);
sel.setEndPoint("startToStart", tmp);
sel.text = "\t"+sel.text.replace(/\r\n/g, "\r\t");
code = code.replace(/\r\n/g, "\r\t");
r.findText(code);
r.select();
}
else
{
sel.text = "\t";
sel.select();
}
break;
case (13) :
tmp = sel.duplicate();
tmp.moveToPoint(r.getBoundingClientRect().left, sel.getClientRects()[0].top);
tmp.setEndPoint("endToEnd", sel);
for (var i=0; tmp.text.match(/^[\t]+/g) && i<tmp.text.match(/^[\t]+/g)[0].length; i++)
tabs += "\t";
sel.text = "\r\n"+tabs;
sel.select();
break;
default :
event.returnValue = true;
break;
}
}
}
//-->
</Script>
</head>
<body <%=refreshframe%> scroll=no bgcolor="#D4D0c8" text="#000000" leftmargin="0" rightmargin="0" bottommargin="0" topmargin="0">
<table id='tds' width='100%' height='100%' border="0" align="center" cellpadding="0" cellspacing="0" bordercolorlight="#666666" bordercolordark="#eeeeee">
<form name="form2" method="post" action="<%=Request.Servervariables("Script_NAME")%>" onsubmit="return checkit();" style="margin:0px">
<tr>
<td height='30' colspan='2'> <table id='tds1' width="100%" border="1" cellpadding="0" cellspacing="0" bordercolorlight="#999999" bordercolordark="#eeeeee" bgcolor="#cacaca">
<tr bgcolor="C4C0B9">
<td bgcolor="#D4D0c8" height='30' valign=middle> 文件:
<input type="text" name="filepath" value="<%=GetPath%>" style="width:15%;height:20" maxlength="50" size="1" class="tx" title='当前编辑文件<%=GetPath%>' readonly=true>
<input type="hidden" name="filepath1" value="<%=GetPathDir%>" >
<input type="hidden" name="filename1" value="<%=GetPathFileName%>">
<img src="pic/1open.gif" width=22 height=22 name="opens" onmouseover="this.src='pic/1open_h.gif';" onmouseout="this.src='pic/1open.gif';" onmousedown="this.src='pic/1open_d.gif';" align=absmiddle alt="浏览读取文件" onClick="getfile();">
<img src="pic/1save.gif" width=22 height=22 name="saves" onmouseover="this.src='pic/1save_h.gif';" onmouseout="this.src='pic/1save.gif';" onmousedown="this.src='pic/1save_d.gif';" align=absmiddle alt="存当前文件" onClick="SaveFile();">
<img src="pic/1saveas.gif" width=22 height=22 onmouseover="this.src='pic/1saveas_h.gif';" onmouseout="this.src='pic/1saveas.gif';" onmousedown="this.src='pic/1saveas_d.gif';" name="saveas" align=absmiddle alt="另存新文件" onClick="SaveItAs();" >
<img src="pic/1HtmPre.gif" width=22 height=22 onmouseover="this.src='pic/1HtmPre_h.gif';" onmouseout="this.src='pic/1HtmPre.gif';" onmousedown="this.src='pic/1HtmPre_d.gif';" name="Previews" align=absmiddle alt="运行HTML代码" onclick="runCode(0);">
<img src="pic/1Aspre.gif" width=22 height=22 onmouseover="this.src='pic/1Aspre_h.gif';" onmouseout="this.src='pic/1Aspre.gif';" onmousedown="this.src='pic/1Aspre_d.gif';" name="ASPreviews" align=absmiddle alt="运行ASP代码" onclick="runASPcode();">
<img src="pic/1refresh.gif" width=22 height=22 onmouseover="this.src='pic/1refresh_h.gif';" onmouseout="this.src='pic/1refresh.gif';" onmousedown="this.src='pic/1refresh_d.gif';" name="refreshFolder" align=absmiddle alt="刷新当前文档目录" onclick="refreshframe(0);">
<img src="pic/1reload.gif" width=22 height=22 onmouseover="this.src='pic/1reload_h.gif';" onmouseout="this.src='pic/1reload.gif';" onmousedown="this.src='pic/1reload_d.gif';" name="rereloadfile" align=absmiddle alt="重读入当前文档,刷新当前文档目录" onclick="reloadfile();">
<img src="pic/1rep.gif" width=22 height=22 onmouseover="this.src='pic/1rep_h.gif';" onmouseout="this.src='pic/1rep.gif';" onmousedown="this.src='pic/1rep_d.gif';" align=absmiddle alt="替换编辑内容" name=reps onclick="Rep();">
<img src="pic/1tojs.gif" width=22 height=22 onmouseover="this.src='pic/1tojs_h.gif';" onmouseout="this.src='pic/1tojs.gif';" onmousedown="this.src='pic/1tojs_d.gif';" name="rereloadfile" align=absmiddle alt="将HTML转为JS变量" onclick="HtmltoJS();">
<img src="pic/1new.gif" width=22 height=22 name="opens" onmouseover="this.src='pic/1new_h.gif';" onmouseout="this.src='pic/1new.gif';" onmousedown="this.src='pic/1new_d.gif';" align=absmiddle alt="建新文件" onClick="selectcodepage();">
<select name="FontFlag" class='tx' onchange="if(this.options[this.selectedIndex].value!=''){form2.content.className=this.options[this.selectedIndex].value;}">
<option value="">改变字体选项</option>
<option value="txt0">MS Shell Dlg</option>
<option value="txt1">Courier New</option>
<option value="txt2">New Roman</option>
<option value="txt3">宋体,Tahoma</option>
<option value="txt4">宋体_Arial</option>
</select>
<span title='tab正向缩进,Ctrl+breakSpace反向缩进'>
<input name="TabKeyON" type="checkbox" onclick="{if (this.value==0)this.value=1;else this.value=0}" value="0">
</span> <a href="javaScript:aboutme();"> <img src="pic/lfgboxlogo.gif" height="24" border="0" align="absmiddle" onMouseOver="this.src='pic/lfgboxlogo_h.gif'" onMouseOut="this.src='pic/lfgboxlogo.gif'" vspace=0 hspace=0></a>
</td>
</tr>
</table>
<table id='tds2' width="100%" border="1" cellpadding="0" cellspacing="0" bordercolorlight="#999999" bordercolordark="#eeeeee" bgcolor="#cacaca">
<tr>
<TD id="replaceTEXT"></td>
</tr>
</table>
</td>
</tr>
<tr>
<td width="40" nowrap><span class='txt0' id='rowsnum' readonly='true' style="text-align: right;padding-right:4px;padding-left:1px;overflow:scroll;overflow-y:hidden;overflow-x:hidden; background-color: #999999;color: #dddddd;border-width:0px;width:100%;height:100%;table-layout:fixed;word-break:break-all;FONT-FAMILY: 'Tahoma','MS Shell Dlg';"><%=numstr%></span> </td>
<td width='100%'> <table id='tds3' border="0" width='100%' height='100%' align="center" cellpadding="0" cellspacing="0">
<tr>
<td align="center" width='100%' bgcolor="#D4D0c8" height='100%' >
<textarea name="content" class="txt0" wrap='OFF' style="width:100%;height:100%;table-layout:fixed;word-break:break-all;"
onkeydown="addrows();editTab();"
onscroll="rowsnum.scrollTop=this.scrollTop;" onfocus="form2.TabKeyON.value=1;form2.TabKeyON.checked=true;" onblur="form2.TabKeyON.value=0;form2.TabKeyON.checked=false;" rows="1" cols="20"><%=Server.HtmlEncode(GetContent)%></textarea>
</td>
</tr>
</table></td>
</tr>
</form>
</table>
<input type="hidden" value="off" id="openmenu">
<table width="98%" cellpadding=0 border=0 cellspacing=0 align="center">
<tr>
<td align="center" valign="middle"><hr width="100%" size=1 style="border:solid 2px #888888;">
<hr width="100%" size=1 style="border:solid 1px #888888;"></td>
</tr></table><br>
</body>
<%SUB Footer()%>
<%End SUB%>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -