我正在使用MVC4填充複雜的視圖模型。我填充這樣使用添加/刪除來綁定表的數據綁定問題
var job = @Html.Raw(Json.Encode(Model.job));
var customer = @Html.Raw(Json.Encode(Model.customer));
var listTasks = @Html.Raw(Json.Encode(Model.Tasks));
var estimateMaterials = @Html.Raw(Json.Encode(Model.estimateMaterials));
var estimate = @Html.Raw(Json.Encode(Model.estimate));
var JobPost = {
customer: customer,
job: job,
listTasks: ko.observableArray(listTasks),
estimateMaterials: ko.observableArray(estimateMaterials),
estimate: ko.observable()
};
ko.applyBindings(JobPost, document.getElementById("update-job-form"));
現在,對象estimateMaterials
被填充到行。而該行,我想在表的底部這樣
然後我看見,rniemeyer wonderful fiddle上添加/刪除易行添加Remove
到每一行和Add button
。
叉形小提琴是:http://jsfiddle.net/codovations/tDV9k/
在有這樣的
self.addLine = function() { self.lines.push(new CartLine()) };
self.removeLine = function(line) { self.lines.remove(line) };
一個片段,我想實現類似的東西,以我的觀察到的陣列
estimateMaterials: ko.observableArray(estimateMaterials)
這是可能的像這樣添加方法?
P.S:我通過使用jquery分別克隆一行/刪除最接近的tr來添加/刪除。我正在尋求一種更乾淨的方式。
更新:
我這裏面臨的主要問題是如何訪問對象的observableArray
是的,它可以添加它們,但是你有什麼樣的問題?你得到一個錯誤?有些東西不起作用?還有什麼? – nemesv
@nemesv:對不起,如果你還不明白我是否無能爲力。我認爲這可以做到。但我不知道在哪裏添加它。我在這裏描述了我的思維過程。我做了數千次迭代,最後把問題抽象出來。 – naveen