网络编程
位置:首页>> 网络编程>> Asp编程>> asp下实现代码的“运行代码”“复制代码”“保存代码”功能源码

asp下实现代码的“运行代码”“复制代码”“保存代码”功能源码

 来源:asp之家 发布时间:2011-04-14 10:39:00 

标签:asp,运行代码,复制代码

Function content_Code(Str) 
dim ary_String,i,n,n_pos 
ary_String=split(Str,"[ code ]") 
n=ubound(ary_String) 
If n<1 then 
content_Code=Str 
Exit function 
End If 
for i=1 to n 
n_pos=inStr(ary_String(i),"[/ code ]") 
If n_pos>0 then 
ary_String(i)="<br /><textarea class=gocode id=runcode"&i&" name=runcode"&i&">" & server.HTMLEncode(left(ary_String(i),n_pos-1))&"</textarea><br /><input type=button class=input-code value=运行代码 onclick=runCode(runcode"&i&")><input type=button class=input-code value=复制代码 onclick=copycode(runcode"&i&")><input type=button class=input-code value=另存代码 onclick=saveCode(runcode"&i&")><span class=code-tishi>提示:您可以先修改部分代码再运行</span><br />" & _ 
right(ary_String(i),len(ary_String(i))-n_pos-6) 
Else 
ary_String(i)="[code]" & ary_String(i) 
End if 
next 
content_Code=join(ary_String,"") 
End Function 
使用方法也很简单:
发表文章时需用使用“运行代码”功能的,主要前后加上

[ code ][/ code ] 
比如:
[复制此代码]CODE:

[ code ] 
<script type="text/javascript"> 
alert("简单吧"); 
</script> 
[/ code ] 
需要注意的是,在显示的页面要进入以下javascript:

function runCode(obj) { 
var winname = window.open('', "_blank", ''); 
winname.document.open('text/html', 'replace'); 
winname.opener = null 
winname.document.writeln(obj.value); 
winname.document.close(); 

function copycode(obj) { 
var rng = document.body.createTextRange(); 
rng.moveToElementText(obj); 
rng.scrollIntoView(); 
rng.select(); 
rng.execCommand("Copy"); 
rng.collapse(false); 

function saveCode(obj) { 
var winname = window.open('', '_blank', 'top=10000'); 
winname.document.open('text/html', 'replace'); 
winname.document.write(obj.value); 
winname.document.execCommand('saveas','','code.htm'); 
winname.close(); 
}

0
投稿

猜你喜欢

  • SQL Server与Oracle、DB2的优劣对比:1.开放性:SQL Server只能在Windows上运行,没有丝毫的开放性,操作系统
  • 偶第一次发主题, 这个是在一个项目中的做...写的一般般, 有什么bug之类的是在所难免, 望见谅功能说明:1. 即时控制用户输入2. 将输
  • 写入:1:把gif图像文件读入内存(一个变量strTemp)。2:写入数据库。Dim binTmp() As 
  • 现在网页设计师除了把页面做的漂亮以外,越来越注重“用户体验”,就是要做“别让用户思考”的网页,使网站真正做到“可用性”。望望结合几年的工作经
  • 例如:将日期格式为2009-6-8的转换为2009-06-08,给小于10的数字补上一个0方法一:year(now)  
  • 阅读作者的上一篇相关文章:段正淳的css笔记(3)标题右侧“更多”的实现 段正淳的css笔记(4)1、css代码的简写css缩写的语法,对新
  • 代码如下:--建立数据表createtable TestData ( ID int identity(1,1) primary key, D
  • 通过 CSS transform (firefox文档, safari文档)属性. 无所不能的css也开始玩起3D效果了。在配合 CSS t
  • 由于 window.onload 事件需要在页面所有内容(包括图片等)加载完后,才执行,但往往我们更希望在 DOM 一加载完就执行脚本。其实
  • 秦歌这篇文章总结得很不错,俺挑刺来啦:1. 优先级的描述不严谨,有 !important 时,网页样式可以覆盖用户自定义样式。用户!impo
  • location是javascript里边管理地址栏的内置对象,比如location.href就管理页面的url,用location.hre
  •  可在图片连接后面加上宽和高,如:width="150" height="50"<h
  • 用新云还不是很熟,一点点学习中。今天遇到一个文章列表前有小圆点的问题,把去除方法记一下。文章列表前有小圆点有这么几种情况:1、li的默认样式
  • 春节前在蓝色理想上发了个“雅虎口碑招聘前端工程师 ”的启事,节后收到很多简历,加之HR通过专业招聘网站得到的简历和朋友同事推荐的简历,数量上
  • 迄今为止,导出/导入工具集仍是跨多个平台转移数据所需劳动强度最小的首选实用工具,尽管人们常常抱怨它速度太慢。导入只是将每条记录从导出转储文件
  • 1.认识数组数组就是某类数据的集合,数据类型可以是整型、字符串、甚至是对象Javascript不支持多维数组,但是因为数组里面可以包含对象(
  • 你还没用 jQuery 写过导航菜单? 相信看到这些出色的jQuery导航菜单后,一定会为此而后悔没早点把 jQuery 应用到自己的Web
  • 我需要查询从现在算起五天前的日期。按照商业习惯,这五天应该不包含星期六和星期天。专家回答:对于许多跟商业日期有关的情况,最好的解决方案是使用
  • html5带给我们的不仅仅是更多语义丰富的标签,还有更多更牛逼的特性,比如“离线存储”。 对于台式电脑来说,或者它并没有带来什么惊喜,但是对
  • 超酷的js图片轮换/轮播 渐变效果··来自腾讯刚刚在腾讯女性频道上看到一个很酷的图片渐变轮换效果·····于是乎····抠下来了···分享·
手机版 网络编程 asp之家 www.aspxhome.com