与多个ckeditor使用checkDirty()提醒用户,如果内容已经改变之前离开页面
Working with multiple CKEditors using checkDirty() to alert user if content has changed before leaving page
我有这个代码非常适合一个CKEditor textarea字段。它在用户离开页面之前提醒他们的内容已被更改。但有些页面有多个ckeditor,我想知道我如何承认他们都使用这个JavaScript代码。
function beforeUnload( e )
{
if ( CKEDITOR.instances.description.checkDirty() )
return e.returnValue = "You will lose the changes made in the editor.";
}
if ( window.addEventListener )
window.addEventListener( "beforeunload", beforeUnload, false );
else
window.attachEvent( "onbeforeunload", beforeUnload );
Description是文本区域的名称,但有些文本区域有其他名称,如products_short_description[1]
或products_description[1]
。我需要找到一种方法,将所有CKEditor名称集成到此代码中,以便如果有人对2或3个编辑器中的一个进行更改,它会相应地提醒他们。
像这样迭代所有实例:
function beforeUnload( evt ) {
for ( var name in CKEDITOR.instances ) {
if ( CKEDITOR.instances[ name ].checkDirty() )
return evt.returnValue = "You will lose the changes made in the editor.";
}
}
相关文章:
- 动态地改变“”的URL;添加新项目”;链接使用javascript/jquery
- 离开页面时弹出消息
- jQuery:当屏幕大小改变时,如何更改默认图像和悬停图像
- 离开页面导航后保留文本区域内容
- 当主导航离开视图时,为粘性导航应用样式
- 为什么使用immutableJS我的状态没有改变
- JavaScript改变了双方的显示风格
- 改变所有<td>为特定的桌子点击颜色
- 将到达日历中的2天添加到离开日历中
- 定时Ajax进程在用户离开页面后继续
- 变量dos'即使我可以返回更新后的值,也不会改变
- jQuery更改变量值
- 爆米花改变来源
- innerHTML赢得't改变元素
- Javascript onclick更改变量值
- 另一个“;如何在不离开网页的情况下改变URL”;
- 与多个ckeditor使用checkDirty()提醒用户,如果内容已经改变之前离开页面
- 在不离开页面的情况下改变按钮的颜色
- 在进入或离开AngularJS状态时改变CSS属性
- 如何使用jquery改变悬停元素的颜色,并在鼠标离开时将其移除