2014-10-14 1 views
0

Существует известная проблема с Telerik RadEditor, которая вызывает нечетные вставки символов, как documented here.Teleric RadEditor - Могу ли я регистрировать события OnClientSubmit клиента в файле скина?

Для работы вокруг требуется вставка скрипта на стороне клиента, чтобы вычеркнуть оскорбительный символ в событии OnClientSubmit.

Мы используем этот элемент управления во многих местах и ​​имеем три стиля, определенные в нашем файле скинов. Мы также выводим пользовательский элемент управления из RadEditor в пользовательский элемент управления, который мы называем RichEdit.

Вопрос: будет ли этот подход работать, чтобы гарантировать, что все экземпляры нашего элемента управления RichEdit получат требуемое событие на стороне клиента?

1) В RichEdit.cs OnLoad зарегистрируйте блок сценария клиента, содержащий требуемую функцию javascript 2) В файле скина добавьте требуемый вызов метода OnClientSubmit на каждый скин?

Итак - будет ли это работать? А если нет, что мне нужно делать?

ответ

-1

И да.

Добавление вызова этого метода в разделе загрузки страницы:

private void AddRichEditGarbageCharacterWorkaround() 
    { 
     string scriptName = "RadEditorOnClientSubmit"; 
     Type csType = GetType(); 

     ClientScriptManager csm = Page.ClientScript; 
     if (!csm.IsClientScriptBlockRegistered(csType, scriptName)) 
     { 
      StringBuilder sb = new StringBuilder(); 
      sb.Append("<script type=\"text/javascript\">"); 
      sb.Append("\tfunction RadEditorStripGarbage(editor, args) {"); 
      sb.Append("\t\tvar html = editor.get_html();"); 
      sb.Append("\t\thtml = html.replace(/\u200b/g, \"\");"); 
      sb.Append("\t\teditor.set_html(html);"); 
      sb.Append("\t\t}"); 
      sb.Append("</script>"); 

      csm.RegisterClientScriptBlock(csType, scriptName, sb.ToString()); 
     } 
    } 

И это добавление к коже:

<nt:RichEdit runat="server" SkinID="SpellCheckOnly" ... 
OnClientSubmit="RadEditorStripGarbage" > 

успешно добавлен код и крюк в каждом конкретном случае.

 Смежные вопросы

  • Нет связанных вопросов^_^