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
が行に取り込まれています。Remove
そしてその行に、このように各行とAdd button
テーブルの一番下に追加したい
次に、行の追加/削除を簡単に行う rniemeyer の素晴らしいフィドルを見ました。
フォークされたフィドルは次のとおりです。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)
このようなメソッドを追加することは可能ですか?
PS: jquery を使用して行を複製/最も近い tr をそれぞれ削除することにより、追加/削除しています。よりクリーンな方法を探しています。
アップデート:
ここで直面している主な問題は、オブジェクトにアクセスする方法です。observableArray