如何使用AJAX Control Toolkit HTML编辑器通过javascript获取/设置内容?

时间:2010-07-27 10:11:38

标签: ajaxcontroltoolkit html-editor

我正在使用AJAX Control工具包HTML编辑器,我希望这是一个简单的问题。正如问题标题所说 - 你如何通过javascript获取/设置HTML编辑器的内容?

我访问服务器端内容属性时没有问题 - 但如何在客户端进行?

感激不尽的任何帮助!

3 个答案:

答案 0 :(得分:8)

Html编辑器是唯一的Ajax Control Toolkit控件之一,因为它不继承AjaxControlToolkit.ExtenderControlBase(服务器端),也不继承AjaxControlToolkit.BehaviorBase(客户端)。

因此,您无法使用$find javascript方法访问客户端上的行为实例,它继承AjaxControlToolkit.ScriptControlBase(服务器端)和Sys.UI.Control(客户端)。< / p>

要访问客户端上的控件实例,可以使用DOM元素上的control属性,如下所示:

<script type="text/javascript">
//considering the editor is loaded.
var editorControl = $get("<%=editor.ClientID%>").control;

//1. For setting content:
editorContorl.set_content("Sample Content");

//2. For getting content:
var content = editorContorl.get_content();    
</script>

答案 1 :(得分:0)

$(function(){
    $find("editor").set_content("jQuery set content");
    alert($find("editor").get_content());
});

答案 2 :(得分:0)

以上答案对我不起作用。 所以我不得不深入挖掘html并获得以下工作解决方案。它已经工作多年了,并且在许多框架/操作系统/浏览器更新/升级后幸免于难。

<script type="text/javascript">
    var varcont = '<%=txtInstructions.ClientID %>' + '_ctl02_ctl00';
    //Get Content
    var content = document.getElementById(varcont).contentWindow.document.body.innerHTML; 

    //Set Content
    document.getElementById(varcont).contentWindow.document.body.innerHTML='<b>I rock</b>'
</script>