我正在跟随他们在Github上的指南,了解如何根据textarea ID或你输入的类来获取wysihtml5实例。这个JSFiddle显示了我遇到的错误:
http://jsfiddle.net/ez3ajvaf/2/
这是我的HTML:
<span class="footer-btn quote" rel=".text-editor" data-text="body-1"><span class="icon"><i class="fa fa-quote-left"></i></span> Quote</span>
<textarea name="body" class="text-editor text-countdown" placeholder="Please allow up to 2,000 characters" maxlength="2000" data-rel="countdown" id="body" required></textarea>
<div class="countdown-wrapper">
<span id="countdown" class="countdown"></span>
</div>
这是我的Javascript:
$('.text-editor').wysihtml5({
toolbar: {
"font-styles": true, //Font styling, e.g. h1, h2, etc. Default true
"emphasis": true, //Italics, bold, etc. Default true
"lists": true, //(Un)ordered lists, e.g. Bullets, Numbers. Default true
"html": false, //Button which allows you to edit the generated HTML. Default false
"link": true, //Button to insert a link. Default true
"image": true, //Button to insert an image. Default true,
"color": false, //Button to change color of font
"blockquote": true, //Blockquote
}
});
$('.quote').on('click', function() {
console.log('clicked');
var textarea = $(this).attr('rel');
console.log($(textarea).data("wysihtml5").editor);
$(textarea).data("wysihtml5").editor.html('hello');
});
我收到的错误是
未捕获的TypeError:无法读取未定义的属性'html'
在他们的github https://github.com/bootstrap-wysiwyg/bootstrap3-wysiwyg下,如果你向下滚动到“你可以像这样访问wysihtml5编辑器对象:”,它会根据他们在wysihtml5上启动的textarea ID显示这个确切的代码。我的文本编辑器加载很好,它工作得很好,但我似乎无法抓住实例。当我启动代码时,data-wysihtml5
似乎没有作为属性添加。
我想点击“引用”时它会引用帖子(我稍后可以添加以获取该上下文)到文本编辑器中。感谢您的帮助或指导!
答案 0 :(得分:0)
我在更新wysihtml5编辑器时遇到了同样的问题,并解决了这个问题:
$('.wysihtml5-sandbox').contents().find('body').html('<b>New text</a>');
我知道,这不是最佳解决方案,但只有这对我有用。如果您有更好的解决方案,请告诉我。
答案 1 :(得分:0)
小提琴不再起作用,可能是一些依赖问题。 问题可能出在文本区域的内容或缺少依赖项的方式上,谁知道。
在任何情况下都可行:
$('.textarea').data('wysihtml5').editor