1
我有一個Knockout可觀察數組,我希望在Javascript中和HTML中編輯。這裏是我的代碼:從Knockout Observable Array中調用函數
var ListModel = function(formula) {
var self = this;
self.formula = ko.observableArray(formula);
this.mergeEquation = function(op) {
if (op.type == "ins") {
self.formula.splice(op.position, 0, op.value);
} else if (op.type == "del") {
self.formula.splice(op.position, 1);
} else {
console.info("No match: " + op.value + op.position);
}
};
};
我的變量op
是一個JSON字符串。我知道如何使用HTML數據綁定調用mergeEquation
函數,但是如何從同一個JS文件中執行此操作?我目前的代碼是這樣的:
ko.applyBindings(new ListModel(formula));
//...
//initializing of JSON object called op
//...
if (something) {
mergeEquation(op);
}
但它不起作用。我錯過了這裏的一些步驟?我已經閱讀了functions和extenders,但這兩個似乎太過矯枉過正,因爲我在這裏想要做的。
PS:這是我的工作的JSON結構的一個樣本:
{"type":"ins", "clientID":1223, "version":0, "value":"hi", "position":0, "id":2736}
你需要顯示你創建ListModel的地方,以及你試圖調用mergeEquation的地方:) –
哦對。我會編輯我的帖子,使其更清晰。 –