Я совершенно новой для выбивания пользовательские привязки, я пытаюсь интегрировать CKEditor с выбыванием выжидать, я следующее связывание получил от поиска Google,Нокаут связывания и CK инструментов Редактор не отображается
ko.bindingHandlers.wysiwyg = {
init: function (element, valueAccessor, allBindingsAccessor, viewModel) {
var value = valueAccessor();
var valueUnwrapped = ko.unwrap(value);
var allBindings = allBindingsAccessor();
var $element = $(element);
$element.attr('contenteditable', true);
if (ko.isObservable(value)) {
var isSubscriberChange = false;
var isEditorChange = true;
$element.html(value());
var isEditorChange = false;
$element.on('input, change, keyup, mouseup', function() {
if (!isSubscriberChange) {
isEditorChange = true;
value($element.html());
isEditorChange = false;
}
});
value.subscribe(function (newValue) {
if (!isEditorChange) {
isSubscriberChange = true;
$element.html(newValue);
isSubscriberChange = false;
}
});
}
}
}
у меня есть следующий код для связывания,
$(function() {
$.getJSON("/getdata", function (data) {
ko.applyBindings({
testList: [{
test: ko.observable()
},
{
test: ko.observable()
}]
}, document.getElementById('htmled'));
});
});
HTML следующим образом
<div id="htmled" data-bind="foreach:testList">
Data
<div class="editor" data-bind="wysiwyg: test">Edit this data</div>
</div>
Бинди ng работает и показывает панель инструментов, когда я вызываю ko.applyBindings вне метода $ .getJSON. Но когда я вызываю applyBindings внутри, панели инструментов не появляются. Может ли кто-нибудь помочь мне в этом? Мне, наверное, что-то не хватает, любая помощь по этому поводу очень ценится.
Jsfiddle Добавлено
Рабочая: http://jsfiddle.net/jogejyothish/h4Lt3/1/ не работает: http://jsfiddle.net/jogejyothish/Se8yR/2/
Jyothish
Thnaks много sifriday, действительно сэкономил мое время и спасибо за пошаговые детали, – Jyothish