java ckeditor 上传图片_java版ckeditor上传图片到数据库

32844397_1.jpg

32844397_2.jpg

32844397_3.jpg

32844397_4.jpg

32844397_5.jpg

32844397_6.jpg

32844397_7.jpg

最近要实现在ckedit上传图片,而且要上传保存到数据库,在网站找了不少资料,基本上都是保存到服务器的文件夹,但那些资料对我也起了很多作用。下面我把我的实现记录下来,作为备忘。(CKEditor 在jsp中实现文件上传的完整例子)http://blog.163.com/prevBlogPerma.do?host=ytrtfhj@126&srl=890531092010226023136&mode=prev

ckeditor非常强大,但官网上它的图片/文件上传使用了ckfinder,比较麻烦。我首先是在图片链接输入框的右边加个按钮,点击事件链接到已有的上传模块,上传后把图片的下载url(这个花了我不少时间)传递给左边的输入框即可。步骤如下:

打开plugins\image\dialogs\image.js,在链接输入框代码结尾也就是 m.lang.image.urlMissing)},后面加上这些代码:

Java代码

{type:'button',id:'myUpload',align:'center',label:'新上传 ',onClick:function(){var thisDialog =this.getDialog();var txtUrlObj = thisDialog.getContentElement('info','txtUrl'); var txtUrlId = txtUrlObj.getInputElement().$.id;

var retFile = window.open("info2j.zrx?path=info/info_uploadImage&infotypeid="+top.document.getElementById('infotypeid').value+"&txtUrlId="+txtUrlId,"","height=300, width=400");if(retFile !=null){this.getDialog().setValueOf('info','txtUrl',retFile);}}},

{type:'button',id:'myUpload',align:'center',label:'新上传 ',onClick:function(){var thisDialog = this.getDialog();var txtUrlObj = thisDialog.getContentElement('info', 'txtUrl'); var txtUrlId = txtUrlObj.getInputElement().$.id; 为了获得图片URL文本框的id,并可以传回页面;我这里由于jsp页面都是放在WEB-INF目录下,所以页面跳转是借助action来实现的。所谓我是先把id传到info2j.action,然后再从info_uploadImage.jsp页面拿,

var retFile = window.open("info2j.action?path=info/info_uploadImage&infotypeid="+top.document.getElementById('infotypeid').value+"&txtUrlId="+txtUrlId, "", "height=300, width=400");

跳转到info_uploadImage.jsp页面,并把图片URL文本框的id传过去

下面是info_uploadImage.jsp的简单代码

Html代码

上传图片

function checkFormat(filePath){

vari=filePath.lastIndexOf(".");

varlen=filePath.length;

varstr=filePath.substring(i+1,len);

varextName="JPG,GIF,PNG,BMP";

if(extName.indexOf(str.toUpperCase())<0){

alert("图片格式不正确");

return false;

}

return true;

}

/*

图标预览,兼容ie,firefox

*/

function fileChange(o){

if(checkFormat(o.value)){

if(window.ActiveXObject){

document.getElementById("uploadImg").width=100;

document.getElementById("uploadImg").height=100;

document.getElementById("uploadImg").src=o.value;

}else{

document.getElementById("uploadImg").width=100;

document.getElementById("uploadImg").height=100;

document.getElementById("uploadImg").src=o.files[0].getAsDataURL();

}

}

}

/* 给图片text附上图片地址*/

function finish(generatedId){

//获得图片text的id

varimageUrl=document.getElementById("txtUrlId").value;

alert("!");

window.opener.document.getElementById(imageUrl).value="info_downloadImage.zrx?imageId="+generatedId;

window.opener.document.getElementById("previewImage").setAttribute("src","info_downloadImage.zrx?imageId="+generatedId);

window.close();

}

enctype="multipart/form-data"target="frame">

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
您好!要使用Java和JSP实现富文本编辑器,您可以使用一些开源的富文本编辑器库,如CKEditor、TinyMCE或Froala Editor。这些库提供了丰富的编辑功能,包括插入图像、链接、样式设置等。 以下是一个使用CKEditor的示例: 1. 首先,下载CKEditor的最新本并将其解压到您的项目目录中。 2. 创建一个JSP页面,用于包含富文本编辑器。例如,创建一个名为editor.jsp的文件,并将以下代码添加到其中: ```jsp <html> <head> <script src="ckeditor/ckeditor.js"></script> </head> <body> <form method="post" action="save.jsp"> <textarea name="content" id="editor"></textarea> <br> <input type="submit" value="保存"> </form> <script> CKEDITOR.replace('editor'); </script> </body> </html> ``` 3. 创建一个用于保存编辑器内容的JSP文件,例如save.jsp。在该文件中,您可以使用request.getParameter("content")来获取编辑器内容,并将其保存到数据库或其他位置。 ```jsp <%@ page contentType="text/html;charset=UTF-8" language="java" %> <% String content = request.getParameter("content"); // 保存content到数据库或其他位置 %> <html> <body> 保存成功! </body> </html> ``` 4. 在您的项目中创建一个文件夹(例如,ckeditor),并将CKEditor解压后的文件夹复制到该文件夹中。 5. 启动您的应用程序,并在浏览器中访问editor.jsp页面,您将看到一个富文本编辑器。 这就是使用Java和JSP实现富文本编辑器的基本步骤。您可以根据您的需求进行自定义和扩展。希望对您有所帮助!如果您还有其他问题,请随时提问。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值