Я использовал TinyMCE в панели обновления, но он продолжает исчезать после каждого частичного сообщения, почему? Он должен работать в любом случае, даже официальный сайт не имеет на это никакого слова.Почему мой контроль исчезает при обратной передаче?
Я использовал это так:
<script type="text/javascript">
tinymce.init({
selector: '#<%=txtBoxBody.ClientID%>',
height: 200,
theme: 'modern',
plugins: [
'advlist autolink lists pagebreak',
//'searchreplace wordcount visualblocks visualchars fullscreen',
'insertdatetime save contextmenu directionality',
' paste textcolor textpattern print'
],
toolbar1: 'insertfile undo redo | fontsizeselect | forecolor emoticons | fontselect emoticons | styleselect | bold italic | alignleft aligncenter alignright alignjustify',
//toolbar2: 'print preview media | forecolor backcolor emoticons',
//image_advtab: true,
fontsize_formats: '8pt 9pt 10pt 11pt 12pt 14pt 18pt 20pt 22pt 24pt 26pt 28pt 36pt 48pt 72pt',
//templates: [
// { title: 'Test template 1', content: 'Test 1' },
// { title: 'Test template 2', content: 'Test 2' }
//],
content_css: [
'//fast.fonts.net/cssapi/e6dc9b99-64fe-4292-ad98-6974f93cd2a2.css',
'//www.tinymce.com/css/codepen.min.css'
]
});
</script>
on this txtbox
<asp:TextBox runat="server" ID="txtBoxBody" Rows="20" Columns="25" TextMode="MultiLine" CssClass="form-control"></asp:TextBox>
он появляется на первой загрузке страницы, но не после того, как пост назад UPDATE:
он попробовал это на событие Pageload
//ScriptManager.RegisterStartupScript(this, this.GetType(), txtBoxBody.UniqueID + "Add", "tinyMCE.execCommand('mceAddEditor', true,'" + txtBoxBody.ClientID + "');", true);
//ScriptManager.RegisterOnSubmitStatement(this, this.GetType(), txtBoxBody.UniqueID + "Remove", "tinyMCE.execCommand('mceRemoveEditor', true,'" + txtBoxBody.ClientID + "');");
It делает его видимым, но делает форму полной неприятностей, то есть полной обратной почтой и различными проблемами.
Обновление: Я использовал pageLoad javascript и помещал в него этот код, но затем плагин исчез.
Update: я попробовал то, что Piyush предложил
<script type="text/javascript">
function SetEditor() {
tinymce.init({
selector: '#<%=txtBoxBody.ClientID%>',
height: 200,
theme: 'modern',
plugins: [
'advlist autolink lists pagebreak',
//'searchreplace wordcount visualblocks visualchars fullscreen',
'insertdatetime save contextmenu directionality',
' paste textcolor textpattern print'
],
toolbar1: 'insertfile undo redo | fontsizeselect | forecolor emoticons | fontselect emoticons | styleselect | bold italic | alignleft aligncenter alignright alignjustify',
//toolbar2: 'print preview media | forecolor backcolor emoticons',
//image_advtab: true,
fontsize_formats: '8pt 9pt 10pt 11pt 12pt 14pt 18pt 20pt 22pt 24pt 26pt 28pt 36pt 48pt 72pt',
//templates: [
// { title: 'Test template 1', content: 'Test 1' },
// { title: 'Test template 2', content: 'Test 2' }
//],
content_css: [
'//fast.fonts.net/cssapi/e6dc9b99-64fe-4292-ad98-6974f93cd2a2.css',
'//www.tinymce.com/css/codepen.min.css'
]
});
}
</script>
<script type="text/javascript">
// below will execute first time when page load
SetEditor();
Sys.WebForms.PageRequestManager.getInstance().add_endRequest(EndRequestHandler);
function EndRequestHandler(sender, args) {
// this will execute on partial postback
SetEditor();
}
</script>
но та же проблема
не работает sir – Stacky
Ну, я пробовал с тем же, и это сработало для меня. Вы положили все это в файл .aspx? –
да, сэр я сделал, и он не работает – Stacky