这个在线编辑器的使用是因为我要做一个发布新闻的模块
最开始选择的是ueditor
但是在使用过程中发现
上传图片功能不可用
百度了很多资料说是因为配置问题 但是我改了一天 跟着把配置都改了也没有找到问题所在
然后就开始转向去找其他合适的在线编辑器了
kindeditor下载的文件少 例子可用 直接用在项目中就可以了
不需要配置什么东西 我觉得很方便 功能也比较齐全
我做的项目是使用MVC+EF
这是页面的代码
<!DOCTYPE HTML>
<html>
<head>
<title>完整demo</title>
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
<link rel="stylesheet" href="../themes/default/default.css" />
<link href="../../CSS/prettify.css" rel="stylesheet" />
<script src="~/JavaScript/AddNews/AddNews.js"></script>
<script charset="utf-8" src="../../JavaScript/jQuery/kindeditor-all.js"></script>
<script charset="utf-8" src="~/kindeditor/kindeditor-all-min.js"></script>
<script charset="utf-8" src="../../JavaScript/jQuery/zh-CN.js"></script>
<script charset="utf-8" src="../../JavaScript/jQuery/prettify.js"></script>
<script>
KindEditor.ready(function (K) {
var editor1 = K.create('#content1', {
cssPath: '/CSS/prettify.css',
uploadJson: '/kindeditor/asp.net/upload_json.ashx',
fileManagerJson: '/kindeditor/asp.net/file_manager_json.ashx',
allowFileManager: true,
afterCreate: function () {
var self = this;
K.ctrl(document, 13, function () {
self.sync();
K('form[name=example]')[0].submit();
});
K.ctrl(self.edit.doc, 13, function () {
self.sync();
K('form[name=example]')[0].submit();
});
}
});
prettyPrint();
});
</script>
</head>
<body>
<div style="margin-top:10px; margin-bottom:10px;margin-left:250px;">
<table>
<tr>
<td>标题:<input id="Title" type="text" style="width:200px;"/></td>
</tr>
</table>
</div>
<form id="example" runat="server">
<textarea id="content1" cols="100" rows="8" style="width:100%;height:300px;visibility:hidden;" runat="server"></textarea>
<br />
</form>
<div style="width:100%; margin-top:5px;margin-left:370px;">
<input id="btnSave" type="button" value="保存" οnclick="Save()" style="width:50px;height:20px;line-height:20px;margin:auto;"/>
</div>
</body>
</html>
这是JS代码
function Save() {
debugger;
if ($("#Title").val() == "") {
alert("标题不能为空!");
}
if ($(document.getElementById("iframeID").contentWindow.document.body).html() == null) {
alert("内容不能为空!");
}
//debugger;
var content = encodeURI($(document.getElementById("iframeID").contentWindow.document.body).html());
$.ajax({
url: "/NewsInfo/AddWebNews",
type: "POST",
dataType: "json",
async: true,
data: { "Title": $("#Title").val(), "Content": content},
success: function (data) {
// debugger;
if (data.IsOK == "true") {
alert("发布成功!");
}
},
error: function (err) {
//alert('错误' + err);
}
})
}
这是控制器的代码
Models.WebNewsDataContext wechatdc = new Models.WebNewsDataContext();
[HttpPost]
public string AddWebNews(string Title, string Content)
{
Models.WebNews WebNews = new Models.WebNews();
WebNews.ID = Guid.NewGuid();
WebNews.Title = Title;
WebNews.ClassID = 1;
WebNews.Content = Content;
WebNews.Source = "WeChat2017";
WebNews.IsShow = true;
WebNews.Sort = 0;
WebNews.SetTime = DateTime.Now;
WebNews.UserInfo_ID = Guid.Parse("04A0FFD0-2CAA-40F6-81BC-3FFC6712011E");
wechatdc.WebNews.InsertOnSubmit(WebNews);
wechatdc.SubmitChanges();
return "{\"IsOK\":\"true\"}";
}