主题:(投机取巧)在ajax应用中整合fckeditor

FCKEditor与Ajax整合
本文介绍了一种在Ajax应用中整合FCKEditor的方法,通过提交两次的技巧确保编辑器的内容能被正确获取,并提供了JavaScript代码示例。
[quote]
项目中一直使用fck做为html编辑器,最近需要在一个ajax应用中整合fckeditor, 然后看了看 http://www.iteye.com/article/44349 这篇文章(里面已经讲过fck提交的时候处理过程,这里就不赘述了). 同时macrochen 也提供了一个办法来整合应用. 我这里要说的是另外一种投机的偷懒做法:

因为fck是在提交的时候才将iframe中的html写到一个隐藏的textarea中,所以提交的时候直接取这个textarea是取不倒值的,为了不去更改fck的源码,我走了另外一条路子,就是将表单"提交两次", 注意是加了引号的. 第一次提交的时候,永远返回false,目的就是一个,让fck把ifame中的html写到textarea中,然后过1秒以后在提交一次,这个时候就能很方便的取到表单的值了.

下面附上js代码:

<script type='text/javascript'>
var submitCount = 1; //记录提交次数
function validate() //表单提交的时候验证函数 onsubmit="return validate()'
{
if(submitCount == 1) //第一次提交直接返回false,并且1秒以后再执行validate().
{
submitCount ++;
setTimeout('validate()',1000);
return false;
}

//第二此提交的时候直接可以从表单中取得值了.
var frm = $('testFrm');
var params = frm.serialize();
$("info").innerHTML = params;
return false;
}
</script>


声明:JavaEye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
全新 IBM SOA 数据服务开发工具
IBM Rational开发者大会9月盛大揭幕!

返回顶楼

abcd123efg123 等级:

文章: 65
积分: 287

时间:2007-03-02 收藏 你的JS代码贴重复了

不知道下面的语句能否符合你的要求。
var editor = FCKeditorAPI.GetInstance("EditorDefault");
var content=editor.EditorDocument.body.innerHTML;
返回顶楼 0 0 积分不足30无法投票

sorphi 等级:

性别:
文章: 326
积分: 735
来自: 北京

时间:2007-03-05 收藏 提交之前,oFCKeditor_fieldClientId.UpdateLinkedField();就可以取得值了
返回顶楼 0 0 积分不足30无法投票

JavaFlasher 等级:

性别:
文章: 112
积分: 233
来自: 北京

时间:2007-03-15 收藏 引用
var editor = FCKeditorAPI.GetInstance("EditorDefault");
var content=editor.EditorDocument.body.innerHTML;


是java 代码还是 js代码
返回顶楼 0 0 积分不足30无法投票

cozone_柯中 等级:

性别:
文章: 225
积分: 434
来自: 湖北武汉北京

时间:2007-03-15 收藏 JavaFlasher 写道
引用
var editor = FCKeditorAPI.GetInstance("EditorDefault");
var content=editor.EditorDocument.body.innerHTML;


是java 代码还是 js代码


是js代码
返回顶楼 0 0 积分不足30无法投票

songshaoxin 等级: 初级会员

文章: 4
积分: 0

时间:2007-08-27 收藏 正确写法应该是这样的吧,而且取得也不是那个隐藏的input框的id,应该是取iframe后面那个隐藏的textarea的ID
var content = FCKeditorAPI.GetInstance("textarea_id").GetXHTML();
返回顶楼 0 0 积分不足30无法投票

songshaoxin 等级: 初级会员

文章: 4
积分: 0

时间:2007-08-27 收藏 正确写法应该是这样的吧,而且取得也不是那个隐藏的input框的id,应该是取iframe后面那个隐藏的textarea的ID
var content = FCKeditorAPI.GetInstance("textarea_id").GetXHTML();
返回顶楼 0 0 积分不足30无法投票

songshaoxin 等级: 初级会员

文章: 4
积分: 0

时间:2007-08-27 收藏 嗯?点一下就发重了
返回顶楼 0 0 积分不足30无法投票

SanyKing 等级: 初级会员

性别:
文章: 8
积分: 0
来自: 宁波

时间:2007-09-05 收藏 我在ruby on rails 中用了ajax和FCKEditor,也出现和foxty 差不多的问题,<form id="t_form" name="t_form" onsubmit="new Ajax.Updater('ajax_new_result', '/topic/create_next', {asynchronous:true, evalScripts:true, onComplete:function(request){document.getElementById('ajax_new_result').innerHTML=request.responseText;hide_loading('t_form-loading',['t_form-submit'])}, onLoading:function(request){show_loading('t_form-loading',['t_form-submit']);}, parameters:Form.serialize(this)}); return false;"
action="/topic/create_next" method="post" ENCTYPE="multipart/form-data">
我那个onsubmit直接用在 ajax上 要搞两次提交麻烦了 

[/quote]
提供了一个基于51单片机的RFID门禁系统的完整资源文件,包括PCB图、原理图、论文以及源程序。该系统设计由单片机、RFID-RC522频射卡模块、LCD显示、灯控电路、蜂鸣器报警电路、存储模块和按键组成。系统支持通过密码和刷卡两种方式进行门禁控制,灯亮表示开门成功,蜂鸣器响表示开门失败。 资源内容 PCB图:包含系统的PCB设计图,方便用户进行硬件电路的制作和调试。 原理图:详细展示了系统的电路连接和模块布局,帮助用户理解系统的工作原理。 论文:提供了系统的详细设计思路、实现方法以及测试结果,适合学习和研究使用。 源程序:包含系统的全部源代码,用户可以根据需要进行修改和优化。 系统功能 刷卡开门:用户可以通过刷RFID卡进行门禁控制,系统会自动识别卡片并判断是否允许开门。 密码开门:用户可以通过输入预设密码进行门禁控制,系统会验证密码的正确性。 状态显示:系统通过LCD显示屏显示当前状态,如刷卡成功、密码错误等。 灯光提示:灯亮表示开门成功,灯灭表示开门失败或未操作。 蜂鸣器报警:当刷卡或密码输入错误时,蜂鸣器会发出报警声,提示用户操作失败。 适用人群 电子工程、自动化等相关专业的学生和研究人员。 对单片机和RFID技术感兴趣的爱好者。 需要开发类似门禁系统的工程师和开发者。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值