嗨,我在asp.net中使用ckeditor。在一个简单的网页中,setData和getData函数工作正常,但是当我在另一个页面中运行相同的代码时,继承了母版页面,则出现错误。
代码是:
<asp:Content ID="Content1" ContentPlaceHolderID="head" Runat="Server">
<script src="js/jquery-1.10.2.min.js"></script>
<script>
$(document).ready(function () {
$('.active').click(function () {
alert(CKEDITOR.instances['txt'].getData());
})
})
</script>
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" Runat="Server">
<ckeditor:ckeditorcontrol runat="server" id="txt" name="" width="870"></ckeditor:ckeditorcontrol>
<span style="margin:20px!important;cursor:pointer" class="active">testing</span>
</asp:Content>
错误是:未捕获的TypeError:无法读取未定义的属性'getData'
答案 0 :(得分:2)
系统无法读取ckeditor的ID,因为使用母版页转换控件的客户端ID(例如在您的示例中),而没有母版页ID为“ txt”,而母版页ID如“ ContentPlaceholderID_txt”。 因此,您可以对ckeditor使用ClientIDMode =“ Static”。如下所示:-
TEXT
我认为这可以解决您的问题。