Opened 17 years ago
Closed 17 years ago
#2267 closed Bug (duplicate)
ASP.NET integration: FCKeditor.IsDirty() can return incorrect results when UpdatePanels are used
Reported by: | Alexey Zuev | Owned by: | |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | General | Version: | |
Keywords: | Cc: |
Description
If partial page rendering is made via UpdatePanels, FCKeditor.IsDirty() of editors outside UpdatePanel that is rendered return [true]. No matter if they are dirty or not.
Steps to reproduce:
- 'fckeditor/' folder contents is default.
- aspx file content:
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" ValidateRequest="false" %> <%@ Register Assembly="FredCK.FCKeditorV2" Namespace="FredCK.FCKeditorV2" TagPrefix="FCKeditorV2" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> <title>Test page</title> </head> <body> <form id="form1" runat="server"> <asp:ScriptManager ID="scriptManager" runat="server" /> <div> <asp:UpdatePanel ID="updatePanel1" runat="server" UpdateMode="Conditional"> <ContentTemplate> <div style="border: solid 1px Black;"> Update panel 1 <FCKeditorV2:FCKeditor ID="fckEditor1" BasePath="fckeditor/" runat="server" /> <asp:Button ID="updateButton1" runat="server" Text="Update1" OnClick="updateButton1_Click" /> </div> </ContentTemplate> </asp:UpdatePanel> <br /> <asp:UpdatePanel ID="updatePanel2" runat="server" UpdateMode="Conditional"> <ContentTemplate> <div style="border: solid 1px Black;"> Update panel 2 <FCKeditorV2:FCKeditor ID="fckEditor2" BasePath="fckeditor/" runat="server" /> <asp:Button ID="updateButton2" runat="server" Text="Update2" OnClick="updateButton1_Click" /> </div> </ContentTemplate> </asp:UpdatePanel> </div> </form> <script type="text/javascript"> function FCKeditor_OnComplete(editorInstance) { editorInstance.Events.AttachEvent('OnFocus', FCKEditor_OnFocus); } function FCKEditor_OnFocus(editorInstance) { alert(editorInstance.Name + '.IsDirty() = ' + editorInstance.IsDirty()); } </script> </body> </html>
- codebehind file content
using System; using System.Web.UI; public partial class _Default : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { fckEditor1.Value = DateTime.Now.ToString(); fckEditor2.Value = DateTime.Now.ToString(); } protected void updateButton1_Click(object sender, EventArgs e) { } protected void updateButton2_Click(object sender, EventArgs e) { } }
- Page loads first. Set focus to first editor - 'fckEditor1.IsDirty() = false' alert as a result. Set focus to second editor - 'fckEditor2.IsDirty() = false' alert as a result. As expected
- Click 'Update1' button - updatePanel1 is updated
- Set focus to second editor - 'fckEditor2.IsDirty() = true' alert as a result. Instead of expected 'fckEditor2.IsDirty() = false'.
FCKEditor Version: 2.6, Night build .NET integration assembly: 2.5.2912.21007 Browsers: FF 2.0.0.14, IE 7.0.5730.11
Sorry, this is duplicate of #2268. Can be deleted