bootstrap wysihtml5 set Значение не работает
У меня есть окно wysihtml, и я хочу заполнить его значение после вызова ajax
$("#<%=txtDescrizioneBreveCategoria.ClientID%>").wysihtml5();
function ModificaCategoria(id) {
$.ajax({
url: "Categorie.aspx/GetCategoria",
type: 'POST',
dataType: "json",
data: JSON.stringify({ 'id': id }),
contentType: 'application/json; charset=utf-8',
cache: false,
async: false,
processdata: true,
traditional: true,
success: function (data) {
var c = data.d;
//we need to parse it to JSON
c = $.parseJSON(c);
$('#<%=txtTitleCategoria.ClientID%>').val(c.Title);
$('#<%=txtDescrizioneBreveCategoria.ClientID%>').val(c.Descrizione);
}
});
}
Я уже пробовал с
$('#<%=txtDescrizioneBreveCategoria.ClientID%>').contents().find('body').html('<b>New text</a>');
и с
$('#<%=txtDescrizioneBreveCategoria.ClientID%>').html(c.Descrizione);
и с
var editorObj = $("#<%=txtDescrizioneBreveCategoria.ClientID%>").data('wysihtml5');
var editor = editorObj.editor;
editor.setValue(c.DescrizioneBreve);
но переменная редактора всегда не определена, я использую ссылку wysihtml5x v0.4.15 здесь
4 ответа
Вы должны быть в состоянии достичь того же, используя ниже
$("#<%=txtDescrizioneBreveCategoria.ClientID%>").wysihtml5();
window.describeEditor = window.editor;
И тогда позже вы должны использовать
describeEditor.setValue(c.DescrizioneBreve, true)
или использовать
editorDescrizioneBreve.data("wysihtml5").editor.setValue(c.DescrizioneBreve, true);
куда editorDescrizioneBreve
это объект, возвращаемый $("#<%=txtDescrizioneBreveCategoria.ClientID%>").wysihtml5()
PS: решение на основе https://github.com/jhollingworth/bootstrap-wysihtml5/issues/52
Для меня это сработало:
$('.wysihtml5-sandbox').contents().find('body').html(descr)
У меня на моей странице только один Wysihtml5, с несколькими, вам нужно использовать более точный селектор.
Для моей работы это:
$('#ID OF ELEMENT').data("wysihtml5").editor.setValue('TEXT TO INSERT');
И у меня есть некоторые на той же странице. :D
Для получения дополнительной информации: https://github.com/jhollingworth/bootstrap-wysihtml5/issues/52 .
Ниже код работает для меня
<textarea class="wysihtml5 form-control" rows="15" id="txtContent" runat="server"></textarea>
<script type="text/javascript">
function GetContent() {
var evnt = {RECORD_ID:'101'};
$.ajax({
type: "post",
url: '/API/GetContent',
contentType: "application/json; charset=utf-8",
data: JSON.stringify(evnt),
success: function (result) {
if (result) {
var editorObj = $("#<%=txtContent.ClientID%>").data('wysihtml5');
var editor = editorObj.editor;
editor.setValue(result.CONTENT);
}
}
});
}
</script>