bootstrap 编辑器编辑器不是表单怎么提交

等等等等等等等等等等完等最热搜索问答话题编程语言基础Web开发数据库开发客户端开发脚本工具游戏开发服务器软硬件开源组件类库相关问答完等等等等完等等等完等等最近浏览暂无贡献等级暂无贡献等级暂无贡献等级暂无贡献等级暂无贡献等级暂无贡献等级暂无贡献等级暂无贡献等级暂无贡献等级暂无贡献等级扫描二维码关注最代码为好友"/>扫描二维码关注最代码为好友2017年2月 总版技术专家分月排行榜第三
2017年3月 .NET技术大版内专家分月排行榜第一2017年2月 .NET技术大版内专家分月排行榜第一2016年10月 .NET技术大版内专家分月排行榜第一2016年8月 .NET技术大版内专家分月排行榜第一2016年7月 .NET技术大版内专家分月排行榜第一
匿名用户不能发表回复!|
每天回帖即可获得10分可用分!小技巧:
你还可以输入10000个字符
(Ctrl+Enter)
请遵守CSDN,不得违反国家法律法规。
转载文章请注明出自“CSDN(www.csdn.net)”。如是商业用途请联系原作者。如何封装form表单中富文本编辑器bootstrap wysiwyg到jfinal传递参数
前言:《如何封装form表单中富文本编辑器bootstrap wysiwyg到jfinal传递参数》,我很纠结这个名字是否词不达意。普通文本编辑器在form表单中提交时,参数值会自然的组成为key value的键值对,而大多数的富文本编辑器都是化,由很多个js和css组成,其在获取值得时候就比较特殊。本篇就详细来介绍一下bootstrap wysiwyg组件是如何向jfinal传递参数的。
富文本编辑器
对于wysiwyg,你可以参考为Bootstrap定制的微型所见即所得(What you see is what you get)富文本编辑器、Bootstrap富文本编辑器bootstrap-wysiwyg的使用
第一篇中的demo,无法输入英文,输入中文到一点问题没有,第二篇中demo是可以运行的,但是利用的资源中font-awesome.css比较古老,版本是3.0.2,而awesome版本已经更新到5.0.0。
版本如果对应不上的话,富文本编辑器也无法正常的显示。
wysiwyg富文本编辑器
导入js和css
&script type=text/javascript src=${ctx}/components/jquery/jquery.js&&/script&&script type=text/javascript src=${ctx}/components/bootstrap/js/bootstrap.min.js&&/script&&script type=text/javascript src=${ctx}/components/wysiwyg/bootstrap-wysiwyg.js&&/script&&script type=text/javascript src=${ctx}/components/wysiwyg/jquery.hotkeys.js&&/script&
注意font-awesome的包路径
使用wysiwyg
在你需要的div中使用这样的语句进行导入,我使用标签,然后传递了初始化的文本内容。
然后你在我提供的资源中找到wysiwyg.jsp文件,里面我使用了
String description = request.getParameter(description);
$('#editor').html($(#description).val());
这三串代码进行参数的传递,不知道是否还有更好的解决方案。
这样,你就可以看到这样的效果:
封装form表单
关键的地方来了,如我前言中所说,对于普通的textarea,我们只要
${deal.brief}
这样使用,就可以通过name属性传递到服务端
String name = getPara(name);
也许你想要说,那在点击提交按钮之前来串js代码不就完了。
form.action=/hi/meinv?mynameis=+$(#me).html()
但对对于一心要封装的我们,怎么能够满足这样的代码。
于是我们有了(代码参照了dwz的写法)
function iframeCallback(form, callback){
var $form = $(form), $iframe = $(#callbackframe);
// 富文本编辑器
$(div.editor, $form).each(function(){
var $this = $(this);
var editor = ;
$form.append(editor);
if(!$form.valid()) {}
if ($iframe.size() == 0) {
$iframe = $(&iframe id="callbackframe" name="callbackframe" src="about:blank" style="display:none"&&/iframe&).appendTo(body);
if(!form.ajax) {
$form.append('');
form.target =
_iframeResponse($iframe[0], callback || YUNM.ajaxDone);
function _iframeResponse(iframe, callback){
var $iframe = $(iframe), $document = $(document);
$document.trigger(ajaxStart);
$iframe.bind(load, function(event){
$iframe.unbind(load);
$document.trigger(ajaxStop);
if (iframe.src == javascript:'%3Chtml%3E%3C/html%3E'; || // For Safari
iframe.src == javascript:'
';) { // For FF, IE } var doc = iframe.contentDocument || iframe. // fixing Opera 9.26,10.00 if (doc.readyState && doc.readyState != 'complete') // fixing Opera 9.64 if (doc.body && doc.body.innerHTML == false) if (doc.XMLDocument) { // response is a xml document Internet Explorer property response = doc.XMLD } else if (doc.body){ try{ response = $iframe.contents().find(body).text(); response = jQuery.parseJSON(response); } catch (e){ // response is html document or plain text response = doc.body.innerHTML; } } else { // response is a xml document response = } callback(response); }); }
$(div.editor, $form).each(function(){
var $this = $(this);
var editor = ;
$form.append(editor);
创建一个隐藏域,然后,设置name属性,以提供给后端获取值。
String description = getPara(editor);
和平常的参数就一致了。基于bootstrap+html5实现的简单html网页编辑器代码
资源人气:
下载所需积分&:&10&分
资源来源:
添加收藏:
反馈报错:
文件大小:
添加时间:
&&您也可以查询相关Tags: &&&&
转载文章,请注明文章来源
,并标明原文地址:
&&&& 不会使用本站js代码的同学请看看这里:
※ JS代码分类
本月人气排行
永不收费【客户主动赞助除外】
欢迎大家积极投稿
只发布精品代码和文章
投稿有价值的内容为您增加外链

我要回帖

更多关于 bootstrap 提交表单 的文章

 

随机推荐