Ok, Ihr Problem ist zweifach.Stefy versorgen Sie mit einem Teil der Antwort, die, die Sie haben TinyMCE auf dem Postbacks zu initialisieren, indem Startskript Registrierung wie folgt:
using System.Web.UI;
namespace TinyMCEProblemDemo
{
public partial class EditorClean : UserControl
{
protected void Page_Load(object sender, System.EventArgs e)
{
ScriptManager.RegisterStartupScript(this.Page,
this.Page.GetType(), mce.ClientID, "callInt" + mce.ClientID + "();", true);
}
}
}
Das zweite Problem, das Sie haben, ist bei der Implementierung einer benutzerdefinierten Kontrolle. Entwerfen benutzerdefinierter Steuerelemente liegt außerhalb des Bereichs dieser Antwort. Google kann Ihnen dabei helfen.
Sie haben mehrere Instanzen Ihres Steuerelements auf der Seite, die Probleme mit dem Skript verursachen können, da es mehrmals gerendert wird. Dies ist, wie ich geändert Markup Ihr Problem (Hinweis dynamische Benennung Ihrer Skriptfunktionen, benutzerdefinierte Steuerelemente eigenständig und Modus werden sollten: „exakt“ auf dem tinyMCE.init): zu lösen
<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="EditorClean.ascx.cs"
Inherits="TinyMCEProblemDemo.EditorClean" %>
<script type="text/javascript" src="Editor/tiny_mce.js"></script>
<script type="text/javascript">
function myCustomCleanup<%= mce.ClientID%>(type, value) {
if (type == "insert_to_editor") {
value = value.replace(/</gi, "<");
value = value.replace(/>/gi, ">");
}
return value;
}
function myCustomSaveContent<%= mce.ClientID%>(element_id, html, body) {
html = html.replace(/</gi, "<");
html = html.replace(/>/gi, ">");
return html;
}
function callInt<%= mce.ClientID%>() {
tinyMCE.init({
mode: "exact",
elements: "<%= mce.ClientID%>",
theme: "advanced",
skin: "o2k7",
plugins: "inlinepopups,paste,safari",
theme_advanced_buttons1: "fontselect,fontsizeselect,|,forecolor,backcolor,|,bold,italic,underline,strikethrough,|,justifyleft,justifycenter,justifyright,justifyfull,|,bullist,numlist,|,outdent,indent,blockquote,|,cut,copy,paste,pastetext,pasteword",
theme_advanced_buttons2: "",
theme_advanced_buttons3: "",
theme_advanced_toolbar_location: "top",
theme_advanced_toolbar_align: "left",
cleanup_callback: "myCustomCleanup<%= mce.ClientID%>",
save_callback: "myCustomSaveContent<%= mce.ClientID%>"
});
}
</script>
<textarea runat="server" id="mce" name="editor" cols="50" rows="15">Enter your text here...</textarea>
Das hat nichts mit meinem Problem zu tun, wo meine Postbacks arbeiten, es ist das tinyMCE Layout, wird nicht wiederhergestellt. Die Codierung des <> -Tags behebt das validationRequest-Problem und ich habe es bereits getan. Das bereitgestellte Codebeispiel enthält solche Fehler nicht. –