日期:2014-05-16  浏览次数:20455 次

JS获取fckeditor修改后的字段,需要点击两次才能得到最新的
html代码
<form name="form1" method="post" action="add.php" onSubmit="return CheckForm(document.form1);">
<input type="hidden" id="lysj" name="lysj" value="测试里面的内容" style="display:none" /><input type="hidden" id="lysj___Config" value="" style="display:none" />
<iframe id="lysj___Frame" src="/infoeditor/editor/fckeditor.html?InstanceName=lysj&classid=3&filepass=&amp;Toolbar=Default" width="800" height="450" frameborder="0" scrolling="no"></iframe>
<input type="submit" name="button" id="button" value="提交">
</form>

JS代码

//页面加载好获取最佳旅游时间和旅游注意事项内容,然后提交的时候做判断,看是否有修改
$(document).ready(function(){ 
  old_lysj=$("#lysj").attr('value');
})

function CheckForm(obj)
{
//判断最佳旅游时间和旅游注意事项是否有修改
  var new_lysj=$("#lysj").attr('value');
  if(new_lysj==old_lysj){
alert('最佳旅游时间没有修改');  
alert(new_lysj);alert(old_lysj);
return false;
  }else{
alert('最佳旅游时间有修改');  
alert(new_lysj);alert(old_lysj);
return false;  
  }
  return false;
//

说明
old_lysj这个是网页加载后获取ID为lysj的文本域里的内容
lysj这个是当提交表单的时候返回验证函数时候获取ID为lysj的文本域里的内容
也就是讲old_lysj是最原始的内容,lysj是网页修改后的内容
现在问题我有修改编辑器里内容第一次提交还是会弹出:最佳旅游时间没有修改,再次提交一下就弹出:最佳旅游时间有修改
现在需要我提交两次才能正确对比内容有没有修改

我然后不用编辑器修改,直接把隐藏域变成文本框修改,就可了,我想这应该是fckeditor编辑器的问题
而且怪的事提交保存到数据库里却是正确的,也就我修改什么保存什么,不要点两次,但是JS获取内容需要提交两次
有没有遇到过这种情况的啊,求解答一下谢谢。

------解决方案--------------------
不错 学习了