富文本ckediter
##<link rel='stylesheet' href='/css/index.css' />
<script type="text/javascript" src="/ckeditor/ckeditor.js"></script>
<textarea name="editor1" id="editor1" rows="10" cols="80">
</textarea>
<div style="margin-top:3rem;">
消息标题:<input type="text" id="ctitle" style="width:500px;"/>
<input type="button" id="button1" value="提交" style="height:2.5rem;width:100%;font-size:1.2rem;letter-spacing:3rem;"/>
</div>
<script type="text/javascript">
$(function(){
CKEDITOR.replace( 'editor1', {
filebrowserUploadUrl: '$!{base}/haliluya/uploadimg.html'
});
$("#button1").click(function(){
var editor = CKEDITOR.instances.editor1;
$.ajax({
url : "/haliluya/uploadContent.html",
data : {
'editorData' : editor.getData(),
'ctitle' : $("#ctitle").val()
},
type : "POST",
success : function(result) {
if (result) {
alert("保存成功");
}else{
alert("提交失败");
}
},
error : function(request) {
alert("sorry!");
}
}, "json");
});
});
</script>
package shareAction;
import java.io.File;
import java.io.PrintWriter;
import javax.servlet.ServletContext;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.util.FileCopyUtils;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.multipart.MultipartFile;
import org.springframework.web.multipart.MultipartHttpServletRequest;
import shareMode.GoodNews;
import shareService.GoodNewsService;
@Controller
@RequestMapping({"/haliluya"})
public class Halelujah
{
@Autowired
private GoodNewsService goodNewsService;
@RequestMapping({"/uploadContent"})
@ResponseBody
public boolean uploadContent(String editorData, String ctitle)
{
boolean ok = true;
GoodNews goodNews = new GoodNews();
goodNews.setContent(editorData);
goodNews.setCtitle(ctitle);
int insert = this.goodNewsService.insertGoodNewsService(goodNews);
if (insert <= 0) {
ok = false;
}
return ok;
}
@RequestMapping({"/uploadimg"})
public void execute(HttpServletResponse response, MultipartHttpServletRequest multipartHttpServletRequest, HttpServletRequest httpServletRequest)
throws Exception
{
MultipartFile file = multipartHttpServletRequest.getFile("upload");
String filename = file.getOriginalFilename();
String imgtype = filename.substring(filename.lastIndexOf("."));
String localhostUrl = "images/contentImg/";
String ctxPath = multipartHttpServletRequest.getSession().getServletContext().getRealPath("/") + localhostUrl;
File dirPath = new File(ctxPath);
if (!dirPath.exists()) {
dirPath.mkdir();
}
filename = String.valueOf(Math.random()) + imgtype;
File uploadFile = new File(ctxPath + filename);
FileCopyUtils.copy(file.getBytes(), uploadFile);
String URL = httpServletRequest.getScheme() + "://" + httpServletRequest.getServerName() + ":" + httpServletRequest.getServerPort() + httpServletRequest.getContextPath() + "/";
String callbackUrl = URL + localhostUrl + filename;
String callback = httpServletRequest.getParameter("CKEditorFuncNum");
PrintWriter out = response.getWriter();
out.println("<script type=\"text/javascript\">");
out.println("window.parent.CKEDITOR.tools.callFunction(" + callback + ",'" + callbackUrl + "','')");
out.println("</script>");
}
@RequestMapping({"/uploadNews"})
public String uploadNews()
{
return "/b/uploadNews";
}
}
富文本ckediter的更多相关文章
- 富文本编辑器Simditor的简易使用
最近打算自己做一个博客系统,并不打算使用帝国cms或者wordpress之类的做后台管理!自己处于学习阶段也就想把从前台到后台一起谢了.好了,废话不多说了,先来看看富文本编辑器SimDitor,这里是 ...
- 个人网站对xss跨站脚本攻击(重点是富文本编辑器情况)和sql注入攻击的防范
昨天本博客受到了xss跨站脚本注入攻击,3分钟攻陷--其实攻击者进攻的手法很简单,没啥技术含量.只能感叹自己之前竟然完全没防范. 这是数据库里留下的一些记录.最后那人弄了一个无限循环弹出框的脚本,估计 ...
- 图解DevExpress RichEditControl富文本的使用,附源码及官方API
9点半了,刚写到1.2. 该回家了,明天继续写完. 大家还需要什么操作,留言说一下,没有的我明天继续加. 好久没有玩DevExpress了,今天下载了一个玩玩,发现竟然更新到14.2.5了..我去 ...
- jsp富文本图片和数据上传
好记性不如烂笔头,记录一下. 2016的最后一天,以一篇博客结尾迎接新的一年. 此处用的富文本编辑器是wangEditor,一款开源的轻量级的富文本编辑器,这里着重说一下里面的图片上传功能. 服务器端 ...
- UEditor百度富文本编辑器--让编辑器自适应宽度的解决方案
UEditor百度富文本编辑器的initialFrameWidth属性,默认值是1000. 不能够自适应屏幕宽度.如图1: 刚开始的时候,我是直接设置initialFrameWidth=null的.效 ...
- iOS - NSMutableAttributedString富文本的实现
NSMutableAttributedString继承于NSAttributedString(带属性的字符串)能够简单快速实现富文本的效果;不多说直接上效果图和代码,通俗易懂: (一)效果图: (二) ...
- 【代码笔记】iOS-获得富文本设置以后的文字高度
一,效果图. 二,工程图. 三,代码. RootViewController.h #import <UIKit/UIKit.h> @interface RootViewController ...
- PHP Ueditor 富文本编辑器
2016年12月11日 08:46:59 星期日 百度的简版富文本编辑器umeditor很久没更新了 全功能版本的配置项跟umeditor还是有区别的, 这里说下ueditor怎么对接到项目中去, 主 ...
- Java 实现HTML富文本导出至word完美解决方案
一. 问题的提出 最近用java开发一个科技项目信息管理系统,里面有一个根据项目申请书的模板填写项目申报信息的功能,有一个科技项目申请书word导出功能. 已有的实现方式:采用标准的jsp模板输出实现 ...
随机推荐
- [DP优化方法之虚树]
首先我们看一篇文章 转自xyz: 给出一棵树. 每次询问选择一些点,求一些东西.这些东西的特点是,许多未选择的点可以通过某种方式剔除而不影响最终结果. 于是就有了建虚树这个技巧..... 我们可以用l ...
- git出错
查询git的版本是否装对 32 位 64位
- 读取和存储文本文件,UTF-8和GB2312通用的函数
'------------------------------------------------- '函数名称:ReadTextFile '作用:利用AdoDb.Stream对象来读取UTF-8格式 ...
- GitHub上优秀的ThirdParty
仅为个人记录. 1.SwiftyJSON GitHub地址:https://github.com/SwiftyJSON/SwiftyJSON 2.CryptoSwift GitHub地址:https: ...
- LightOJ 1095 Arrange the Numbers-容斥
给出n,m,k,求1~n中前m个正好有k个在原来位置的种数(i在第i个位置) 做法:容斥,先选出k个放到原来位置,然后剩下m-k个不能放到原来位置的,用0个放到原来位置的,有C(m-k,0)*(n-k ...
- python 基础学习-总结1
1.Python 简介 易学易懂,语法简单 不需编译,即可运行 比其他语言更简洁 不需要管理内存 1.1 什么是Python? python 是由Guido.van.Rossum于1989年始创,其根 ...
- jQuery 源码学习(先放在这,未开始)
希望对源码有一个框架上认识,对整体结构有一个理解. 对外只暴露出了一个变量,$/jQuery,这个变量指向一个函数 function(a,b){return new n.fn.init(a,b)}
- PLSQL 几种游标的用法
分类: Oracle 1. PL/SQL里的游标可以分为显式和隐式两种,而隐式有分为select into隐式游标和for .. in 隐式游标两种.所以,我们可以认为,有3种游标用法: A. 显式游 ...
- OAuth2.0 工作流程
重要术语 Authorization Server:授权服务器,能够成功验证资源拥有者和获取授权,并在此之后分发令牌的服务器: Resource Server:资源服务器,存储用户的数据资源,能够 ...
- DEV TdxLayoutGroup设置tab
TdxLayoutGroup 属性的 LayoutDirection :ldvertical,ldtabbed(显示tab页),ldhorizontal