ASP.NET MVC4实现TinyMCE 4.0.20自定义上传功能
tinymce 插件不提供免费的本地图片上传功能,所以自己将uploadify这个上传插件整合到tinymce,实现本地上传,还用到了jquery.ui插件,先展示全部的代码
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
接下来分步骤来分析
1 先实现在tinymce插件上添加自定义按钮
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
2.初始化uploadify插件
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
3.在点击自定义按钮后启用jquery-ui的dialog插件调出上传对话框
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
至此前台部分OK了,接下来是后台
1.后台接收用户上传的图片
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
2.接收tinymce插件的内容(我这里简单的用记事本来替代数据库),然后再从记事本中把内容读出来呈现到另一个页面上
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
因为在mvc4中为了防止脚本攻击,默认是不允许有html标记的内容传到后台的,所以我建立了一个TinyMCEModels,在content属性上加上AllowHtml标记(在System.Web.Mvc命名空间下),这样就行了
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
源码 https://files.cnblogs.com/guzhehang/TinyMCEUpload.rar
用asp.net+Jquery+Ajax+sqlserver编写的 (英语六级记单词)
开始(英语对程序员的重要性引用) 出处
英语的重要性已经毋庸置疑,对于程序员来说更甚,一些最新的技术资料是英文的,如果想进入外企英语也是一个很重要的条件。对于程序员来说怎样学习好英语,在此谈一下我的一些学习经验。希望对英语像我这样不怎么好的朋友有所帮助,也欢迎大家提出意见和建议。
英语的学习不外乎“听说读写”,按照通常的英语学习来说“听说读写”这个顺序是有道理的,语言最大的用处就是用来交流,听说排在首位无可厚非。不过 对于程序员来说我认为读应该是最重要的,良好的阅读能力对于我们查阅资料、使用一些英文软件、订阅国外大牛的blog都会带来很大的方便。我个人将英语的 学习分为三个步骤:单词、阅读、听说,下面分别来说一下。
单词
单词英语学习的基础,上学时记单词总是抱着本四六级之类的字典,从A开始往后记,这样很费时间而且也没有针对性。对于工作了的朋友来说时间应该不会 像在学习时那样多了,在业余的时间要关注新的技术,有的人可能还会接点私活,挤点时间出来了可能还要陪老婆逛逛街,所以不太可能每天专门抽出固定时间来记 单词。我的做法是利用每天的若个的“小时间”,这个“小时间”是指上班的公交车上或地铁上(在车上有座就看书没座就记单词),上下班的路上时间可能很长, 这个时间可是很宝贵的,不能浪费了。类似这样的“小时间”每天会有很多,这个因人而异。至于单词的来源我都是在看英文资料,博客,等的时候出现不认识的我 都会记在一个小的便签本上,这个本随身携带,所有的“小时间”都可以拿出来看上一眼,像我每天晚上都会去健身房,有的人在跑步机上会听音乐看电视,而我在 边跑步时也会不时掏出小本看一下,二十几分钟下来也能记住不少。很多人都说没有时间,我觉得只要肯挤总会有的。
阅读
阅读我主要是看一些国外技术网站,博客,还有就是一些原版的技术书籍,不过看英文书籍的时候不多,主要原因还是水平不够,所以还是以博客为主。就像 上面所说的遇到不认识的单词我会记到便签本上,然后在每天的“小时间”去搞定。对于英文的东西,很多人会有抵触心理,当初我注册Twitter的时候,一 看全是英文的,也差点就直接点关闭了,不过最终还是注册并使用了,现在也很适应那种全英文的界面了。所以说适应是很重要的,随着词汇量的增大,会发现看懂 英文的文档或博客文章没有想象的那样难。
听说
听说才是语言的根本,在这里却排在了后面,因为在很多的程序员的工作中,更多的是需要查阅英文的资料或文档,而实际用英语来交流的相对较少。但是如 果在您有很好技术的同时还够讲一口流利的英语,那肯定会使您在职业生涯中获得更多的机会。我很喜欢看美剧,所以理所当然“听说”我也是从美剧入手,《老友 记》是用来练习口语的一个很不错的片子,够长也够生活化。第一遍用中文字幕,先了解大概故事内容,然后就可以使用英文字幕看了,并记录常用的语句,同样还 是利用“小时间”去记住它。光记住了还不行,得开口说,如果没有对话环境就自己对着镜子练吧。相信看完10季的《老友记》看完听说的能力一定会提升一个台 阶的。当然看视频时很费时间的,这个得每天抽出点时间来看。不要舍不得那点时间,听说能力练好了,老赵辛苦上传的那些视频我们就能享受到了。
总结
上面说了一些自己的一些学习方法,目前来看利用“小时间”记单词的方法是很有效的。其实每个人都有适合自己的学习方法,关键就是是否能持续学下去,坚持下去。如果您有什么好的学习方法欢迎和大家分享。
开始
那天看见了一个博友写的一个查询单词的jsp网站,感觉很不错,很实用! 于是我写有一个想法就是写一个查询单词的系统,做开发的我们有时候一个单词还真是难懂它的意思!
地址:
需要测试或者查看的或者需要源码的点击我!
成果预览
支持根据汉字或者英文搜索!
-
实现原理
原理图:
整个过程用ajax请求开始,前端数据展示结束!
前端代码:
$.post("Ajax.aspx", { "type": "get", "words": $("#txtwords").val() }, function (redata) { if (redata == null || redata == "") { $(".ui-ios-overlay").hide(); $("#laf").html("Counts:0"); return; } var obj = $.parseJSON(redata); if (obj == null || obj == "") { $(".ui-ios-overlay").hide(); $("#laf").html("Counts:0"); return; } var sampelist = []; var result = ""; $("#laf").html("Counts:" + obj.length); for (var i = 0; i < obj.length; i++) { result = '<ul id="tabs"><li><a style="font-size:20px;color:red">' + decodeURIComponent(obj[i].words) + '</a></li></ul>' + '<div id="content"><div id="tab1"><h2>' + decodeURIComponent(obj[i].meaning) + '</h2>'; result = result + ('</div></div>'); $("#divresult").append("<br/>" + result); if (obj.length == (i + 1)) { $("#divresult").append("<br/>"); } result = null; sampelist = null; sampelist = []; } redata = null; obj = null; $(".ui-ios-overlay").hide(); })
底层代码
/// <summary> /// 是否为英文 /// </summary> /// <param name="str"></param> /// <returns></returns> private bool Isengchar(string str) { Regex r = new Regex("^[A-Za-z]+$");//构造表达式 Match m = r.Match(str);//匹配源文本 if (m.Success) { r = null; m = null; return true; } r = null; m = null; return false; }
//英文 if (Isengchar(word)) { sql = string.Format("select top 10 a,b from cetsix where b like '%{0}%'", word);//前十条 } //汉字 else { sql = string.Format("select top 10 * from cetsix where b like '%{0}%' ", word);//前十条 } dt = db.GetDataTable(sql, null); sql = null; word = null; if (dt != null && dt.Rows.Count > 0) { int length = dt.Rows.Count; for (int i = 0; i < length; i++) { dt.Rows[i]["a"] = HttpUtility.UrlEncode(dt.Rows[i]["a"].ToString().Replace("/r", "<br/>").Replace("/n", "")).Replace("+", "%20");//加码 dt.Rows[i]["b"] = HttpUtility.UrlEncode(dt.Rows[i]["b"].ToString().Replace("/r", "<br/>").Replace("/n", "")).Replace("+", "%20");//加码 } } return Common.DataTableToJson(dt);
最后
祝大家的英语单词量大增,英语成绩快速提高! Android版本的在360平台里面搜“瓦特平台” 谢谢。
需要源码的可以联系我 点击这里