六狼论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博账号登陆

只需一步,快速开始

搜索
查看: 1050|回复: 0

利用kindeditor实现设为封面缩略图等功能ASP代码-it论坛

[复制链接]
 楼主| 发表于 2013-12-21 15:48:30 | 显示全部楼层 |阅读模式
利用kindeditor实现设为封面缩略图等功能ASP代码-it论坛
此例子是得用kindeditor完成的,这个编辑器下载的地方大家可以去百度一下就行了
上传的图片可以生成缩略图排列,点击图片可以插入到编辑器中,可以删除某个图片,删除的同时会从服务上一起删除

下面是源代码 it论坛

第一个添加页面呀
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3. <head>
  4. <meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
  5. <title>无标题文档</title>
  6. <style type="text/css">
  7. .imgDiv { float:left; width:130px; height:110px; padding-top:10px; padding-left:5px; background:#ccc;}
  8. .imgDiv img{ border:0px; width:120px; height:90px}
  9. </style>
  10. <link rel="stylesheet" href="editor/themes/default/default.css" />
  11. <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.6.4/jquery.min.js"></script>
  12. <script src="editor/kindeditor.js"></script>
  13. <script src="editor/lang/zh_CN.js"></script>
  14. <script>
  15. KindEditor.ready(function(K) {
  16. var imgh="";
  17. var imgurl="";
  18. var editor = K.editor({
  19. allowFileManager : true,
  20. uploadJson : 'editor/asp/upload_json.asp'
  21. });
  22. K('#J_selectImage').click(function() {
  23. editor.loadPlugin('multiimage', function() {
  24. editor.plugin.multiImageDialog({
  25. clickFn : function(urlList) {
  26. var div = K('#J_imageView');
  27. div.html('');
  28. K.each(urlList, function(i, data) {
  29. var j=document.getElementById('ImagePath').value;
  30. if(j==""){
  31. imgurl=data.url;
  32. }
  33. else{
  34. imgurl=j+"|"+data.url;
  35. }
  36. $("#ImagePath").val(imgurl);          
  37. });
  38. editor.hideDialog();
  39. var array = imgurl.split("|");
  40. var ids;
  41.                                 for (var s=0 ; s< array.length ; s++)
  42.                                 {
  43.                                  ids=array[s];
  44.                                  ids=ids.substr(ids.lastIndexOf("/")+1,ids.lastIndexOf("."));
  45.                                  ids=ids.replace(".","");
  46.                                     $('#J_imageView').append('<div class="imgDiv" id="'+ids+'"><a href="javascript:setContent(\'' + array[s] + '\')"><img title="点击图片将图片插入到编辑器" src="'+array[s] + '" width="120" height="90" border="0" /></a>
  47. <label><input type="radio" name="IndexImageradio" onclick="setIndexImage(\''+array[s] +'\')" value="'+array[s] +'" />设为封面</label> <a href="javascript:dropThisDiv(\''+ids+'\',\''+array[s] +'\')">删除</a></div>');
  48.                                 }
  49. }
  50. });
  51. });
  52. });
  53. });

  54. //设置封面图片
  55. function setIndexImage(Value)
  56. {
  57.    $("#IcoImage").val(Value);
  58. //$("#picView").html("<img id='img_view' src='"+t+"' width='160'/>");
  59. }
  60. //向编辑器插入图片
  61. function setContent(Value)   
  62. {
  63.     if (Value != '' && Value != null) {
  64.   var valueimg='<img src="'+Value+'" />';
  65.   editor.insertHtml(''+valueimg+''); //利用kindeditor里的insertHtml方法向光标所在处添加html内容
  66.     }
  67. }
  68. //向编辑器插入分页标签
  69. function SetEditorPage(Value)   
  70. {
  71.     if (Value != '' && Value != null) {
  72.   editor.insertHtml(''+Value+''); //利用kindeditor里的insertHtml方法向光标所在处添加html内容
  73.     }
  74. }
  75.     //删除图片
  76.     function dropThisDiv(t,p)
  77.     {
  78.         document.getElementById(t).style.display='none'
  79.         var str =document.getElementById("ImagePath").value;   //取上传了的图片内容
  80. var strs =document.getElementById("IcoImage").value; //取缩略图文本框的内容
  81. //利用kindeditor里的内置API方法,取内容编辑器的内容,开始
  82.         var strcon = editor.html(); //editor为页面添加编辑器里JS里定义的那个值
  83.         editor.sync();//同步到editor这个编辑器
  84.         strcon = document.getElementById('Content').value; // 原生API,content为页面上textarea的ID值
  85. //editor.html('HTML内容');设置编辑器的值
  86.         //取内容编辑器的内容,结束
  87.         var arr = str.split("|");
  88.         var nstr="";
  89.         for (var i=0; i<arr.length; i++)
  90.         {
  91.             if(arr[i]!=p)
  92.             {
  93.            if (nstr!="")
  94.            {
  95.            nstr=nstr+"|";
  96.            }
  97.            nstr=nstr+arr[i]
  98.             }
  99.         }        
  100.         if (nstr=="")
  101.         {
  102.             $("#imgTable").hide();
  103.         }
  104. //判断要删除的图片是否被设置成了封面,如果是就清空,如果不是就不管,开始
  105. if (strs==p){
  106. document.getElementById("IcoImage").value=""; //原来为""
  107. }
  108. else
  109. {
  110. document.getElementById("IcoImage").value=strs; //原来为strs
  111. }
  112. //判断要删除的图片是否被设置成了封面,如果是就清空,如果不是就不管,结束
  113.         document.getElementById("ImagePath").value=nstr;

  114.        if (confirm("你确定从服务上一起删除这个图片吗?")){ //弹出提示框,点确定后执行删除图片代码
  115.         //利用ajax调用deltu.asp页面进行删除图片
  116.            var myDate = new Date();
  117.             $.ajax({
  118.                 url: "admin/deltu.asp?id="+p+"",
  119.                 data: { datetime: myDate.getTime() },
  120.                 dataType: "text"
  121.             });
  122.        //删除图片结束
  123.   //同时删除编辑器里插入的相应图片,开始
  124.       //正则替换开始
  125.       var regimgb='<img src="'+p+'" />';
  126.       var regconb=new RegExp(""+regimgb+"","g"); //创建正则RegExp对象  
  127.            var stringObjconb=""+strcon+"";  
  128.            var newstrconb=stringObjconb.replace(regconb,"");          
  129.   //正则替换结束
  130.   editor.html(''+newstrconb+'');  //利用kindeditor里的内置API方法替换掉原来的编辑器内的内容
  131.   //document.getElementById("IndexImage").value=stringObjcona; //调试用的
  132.   //同时删除编辑器里插入的相应图片,结束
  133.        }          
  134.     }


  135. </script>
  136. </head>

  137. <body>
  138. <FORM name="form" action="test2.asp" method="post" >

  139. <script>
  140. var editor;
  141. KindEditor.ready(function(K) {
  142. editor = K.create('textarea[name="Content"]', {
  143. filterMode : false,
  144. uploadJson : 'editor/asp/upload_json.asp',
  145. fileManagerJson : 'editor/asp/file_manager_json.asp',
  146. allowFileManager : true,
  147. width: '650px',
  148. hight: '300px'
  149. });
  150. });
  151. </script>   
  152. <textarea name="Content" id="Content" style="width:650px;height:300px;visibility:hidden;"></textarea>
  153.         首页缩略图:<input type="text" id="IcoImage" name="IcoImage" value="" style="width:600px;" />

  154.         <input type="button" id="J_selectImage" value="批量上传" />

  155.         <input type="hidden" id="ImagePath" name="ImagePath" value="" style="width:600px;" />
  156. <div id="J_imageView"></div>


  157. <INPUT class="button" type="submit" value="添加" />
  158. </FORM>
  159. </body>
  160. </html>
复制代码
/////////////////////////////////////////////////////

以下为删除图片时所要调用的deltu.asp内容
  1. <%
  2. dim fso,id
  3. id=request("id")
  4. FileName=server.MapPath(id) '必须转换成绝对路径的
  5. Set Fso = CreateObject("scripting.filesystemobject")
  6. if Fso.FileExists(Filename) then '判断文件是否存在
  7. Fso.DeleteFile filename
  8. end if
  9. Set Fso = nothing
  10. %>
复制代码
//////////////////////////////////

第二个修改页面呀,其实这个页面和第一个添加的大部分是一样的,只有一小点不一样的地方,就是,修改的时候,原来可能是有已经上传了的图片的,所以要打开修改页面时就排 列出来才行

那么我们只要加一些代码就行了,
下面是代码test2.asp
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3. <head>
  4. <meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
  5. <title>无标题文档</title>

  6. <link rel="stylesheet" href="admin/css/style.css" />
  7. <link rel="stylesheet" href="editor/themes/default/default.css" />
  8. <script type="text/javascript" src="js/jquery.js"></script>
  9. <script src="editor/kindeditor.js"></script>
  10. <script src="editor/lang/zh_CN.js"></script>
  11.                 <script>
  12.                         KindEditor.ready(function(K) {
  13.                                 var imgh="";
  14.                                 var imgurl="";
  15.                                 var editor = K.editor({
  16.                                         allowFileManager : true,
  17.                                         uploadJson : 'editor/asp/upload_json.asp'
  18.                                 });
  19.                                 K('#J_selectImage').click(function() {
  20.                                         editor.loadPlugin('multiimage', function() {
  21.                                                 editor.plugin.multiImageDialog({
  22.                                                         clickFn : function(urlList) {
  23.                                                                 var div = K('#J_imageView');
  24.                                                                 div.html('');
  25.                                                                 K.each(urlList, function(i, data) {
  26.                                                                 var j=document.getElementById('ImagePath').value;
  27.                                                                 if(j==""){
  28.                                                                  imgurl=data.url;        
  29.                                                                 }
  30.                                                                 else{
  31.                                                                  imgurl=j+"|"+data.url;
  32.                                                                 }
  33.                                                                 $("#ImagePath").val(imgurl);                 
  34.                                                                 });
  35.                                                                 editor.hideDialog();
  36.                                                                 var array = imgurl.split("|");
  37.                                                                 var ids;
  38.                                 for (var s=0 ; s< array.length ; s++)
  39.                                 {
  40.                                  ids=array[s];
  41.                                  ids=ids.substr(ids.lastIndexOf("/")+1,ids.lastIndexOf("."));
  42.                                  ids=ids.replace(".","");
  43.                                     $('#J_imageView').append('<div class="imgDiv" id="'+ids+'"><a href="javascript:setContent(\'' + array[s] + '\')"><img title="点击图片将图片插入到编辑器" src="'+array[s] + '" width="120" height="90" border="0" /></a>
  44. <label><input type="radio" name="IndexImageradio" onclick="setIndexImage(\''+array[s] +'\')" value="'+array[s] +'" />设为封面</label> <a href="javascript:dropThisDiv(\''+ids+'\',\''+array[s] +'\')">删除</a></div>');
  45.                                 }
  46.                                                         }
  47.                                                 });
  48.                                         });
  49.                                 });
  50.                         });

  51. //设置封面图片
  52. function setIndexImage(Value)
  53. {
  54.    $("#IcoImage").val(Value);
  55.                 //$("#picView").html("<img id='img_view' src='"+t+"' width='160'/>");
  56. }
  57. //向编辑器插入图片       
  58. function setContent(Value)   
  59. {
  60.     if (Value != '' && Value != null) {
  61.            var valueimg='<img src="'+Value+'" />';
  62.            editor.insertHtml(''+valueimg+''); //利用kindeditor里的insertHtml方法向光标所在处添加html内容
  63.     }
  64. }
  65. //向编辑器插入分页标签
  66. function SetEditorPage(Value)   
  67. {
  68.     if (Value != '' && Value != null) {
  69.            editor.insertHtml(''+Value+''); //利用kindeditor里的insertHtml方法向光标所在处添加html内容
  70.     }
  71. }
  72.     //删除图片
  73.     function dropThisDiv(t,p)
  74.     {
  75.         document.getElementById(t).style.display='none'
  76.         var str =document.getElementById("ImagePath").value;   //取上传了的图片内容
  77.                 var strs =document.getElementById("IcoImage").value; //取缩略图文本框的内容
  78.                 //利用kindeditor里的内置API方法,取内容编辑器的内容,开始
  79.         var strcon = editor.html(); //editor为页面添加编辑器里JS里定义的那个值
  80.         editor.sync();//同步到editor这个编辑器
  81.         strcon = document.getElementById('Content').value; // 原生API,content为页面上textarea的ID值
  82.                 //editor.html('HTML内容');设置编辑器的值
  83.         //取内容编辑器的内容,结束
  84.         var arr = str.split("|");
  85.         var nstr="";
  86.         for (var i=0; i<arr.length; i++)
  87.         {
  88.             if(arr[i]!=p)
  89.             {
  90.                     if (nstr!="")
  91.                     {
  92.                             nstr=nstr+"|";
  93.                     }               
  94.                     nstr=nstr+arr[i]
  95.             }
  96.         }        
  97.         if (nstr=="")
  98.         {
  99.             $("#imgTable").hide();
  100.         }
  101.                 //判断要删除的图片是否被设置成了封面,如果是就清空,如果不是就不管,开始
  102.                 if (strs==p){
  103.                 document.getElementById("IcoImage").value=""; //原来为""
  104.                 }
  105.                 else
  106.                 {
  107.                 document.getElementById("IcoImage").value=strs; //原来为strs
  108.                 }
  109.                 //判断要删除的图片是否被设置成了封面,如果是就清空,如果不是就不管,结束
  110.         document.getElementById("ImagePath").value=nstr;

  111.        if (confirm("你确定从服务上一起删除这个图片吗?")){ //弹出提示框,点确定后执行删除图片代码
  112.         //利用ajax调用deltu.asp页面进行删除图片
  113.            var myDate = new Date();
  114.             $.ajax({
  115.                 url: "admin/deltu.asp?id="+p+"",
  116.                 data: { datetime: myDate.getTime() },
  117.                 dataType: "text"
  118.             });
  119.        //删除图片结束
  120.            //同时删除编辑器里插入的相应图片,开始
  121.                //正则替换开始
  122.                var regimgb='<img src="'+p+'" />';
  123.                var regconb=new RegExp(""+regimgb+"","g"); //创建正则RegExp对象  
  124.            var stringObjconb=""+strcon+"";  
  125.            var newstrconb=stringObjconb.replace(regconb,"");                  
  126.                    //正则替换结束
  127.                    editor.html(''+newstrconb+'');  //利用kindeditor里的内置API方法替换掉原来的编辑器内的内容
  128.                    //document.getElementById("IndexImage").value=stringObjcona; //调试用的
  129.            //同时删除编辑器里插入的相应图片,结束
  130.        }                 
  131.     }


  132.                 </script>
  133. </head>
  134. <%
  135. Content=request("Content")
  136. IcoImage=request("IcoImage")
  137. ImagePath=request("ImagePath")
  138. %>
  139. <body>
  140. <FORM name="form" action="test3.asp" method="post" >
  141. <script>
  142. var editor;
  143. KindEditor.ready(function(K) {
  144. editor = K.create('textarea[name="Content"]', {
  145. filterMode : false,               
  146. uploadJson : 'editor/asp/upload_json.asp',
  147. fileManagerJson : 'editor/asp/file_manager_json.asp',
  148. allowFileManager : true,
  149. width: '650px',
  150. hight: '300px'
  151. });
  152. });
  153. </script>   
  154. <textarea name="Content" id="Content" style="width:650px;height:300px;visibility:hidden;"><%=Content%></textarea>
  155.         首页缩略图:<input type="text" id="IcoImage" name="IcoImage" value="<%=IcoImage%>" style="width:600px;" />

  156.         <input type="button" id="J_selectImage" value="批量上传" />

  157.         <input type="hidden" id="ImagePath" name="ImagePath" value="<%=ImagePath%>" style="width:600px;" />
  158.                 <div id="J_imageView">
  159. <%
  160. '输出已有图片信息
  161. 'die imgUrls
  162. Dim img,i,ids
  163. if ImagePath<>"" then
  164. img = split(ImagePath,"|")
  165.         For i=0 to ubound(img)       
  166.                 ids=replace(replace(img(i),"/",""),".","")
  167.                 response.write  "<div class=""imgDiv"" id="""&ids&"""><a href=""javascript:setContent('"&img(i)&"')""        ><img title=""点击图片将图片插入到编辑器"" src="""&img(i)&""" border=""0"" /></a>
  168. <label><input type=""radio"" name=""IndexImageradio"" onclick=""setIndexImage('"&img(i)&"')"" value="""&img(i)&""" />设为封面</label> <a href=""javascript:dropThisDiv('"&ids&"','"&img(i)&"')"">删除</a></div>"
  169.         next
  170. end if
  171. %>        
  172.         </div>
  173.         

  174. <INPUT class="button" type="submit" value="添加" />
  175. </FORM>
  176. </body>
  177. </html>
复制代码
本文摘自it论坛:http://wenku.baidu.com/link?url= ... HBHedkz4VYiqLbU77MS

该会员没有填写今日想说内容.
您需要登录后才可以回帖 登录 | 立即注册 新浪微博账号登陆

本版积分规则

快速回复 返回顶部 返回列表