優點:JavaScript:將對象數組綁定到DOM顯示的算法或方法?
我們發送使用jQuery和阿賈克斯嵌套對象的JSON數組()。我們使用JQuery和Microsoft模板來呈現內容。它在400毫秒內發送100個對象。這比我們在10秒內完成50個產品的同等服務器渲染速度要快得多。
的難度:
我們需要綁定JavaScript對象陣列到DOM html元素它代表,即,改變的HTML輸入將反映回JavaScript對象。我們的困難是,我們的對象是嵌套的,且僅包含選擇的選項:
Product[].Department[].deptid;
// We only store the departments for which this product participates
我們嘗試了微軟數據連接使用JQuery,既要有對象的屬性和html元素,以存在將它們綁定在一起。這對上述情況並不適用。我們可以這樣做:
Product[].Department[].Dept.id;
Product[].Department[].Dept.name;
Product[].Department[].Dept.selected; // true if selected, false if not
// This requires all possible options in all needed products. Yuck
是否有任何的例子在那裏就如何最好地處理綁定一個JavaScript嵌套對象數組他們所代表的HTML元素?
我們不會將表單元素提交回服務器。相反,我們將它們收集到一個JSON數組中並將其發送回服務器。它工作得非常快,但是組裝很繁瑣。
是的。我需要知道修改了哪些內容,刪除了哪些內容,以及將每個對象的CRUD標誌(CUD)發送回服務器的新內容。 – 2010-12-14 20:57:02
我不知道這是一個通用庫,特別是考慮到您需要存儲的特定結構。但是,當用戶更改表單元素時,更新模型(Javascript對象)不應太複雜 - 只要您可以確定哪些元素應該影響哪些數據。 – 2010-12-14 21:46:46
這個來自Jamie Thomas的框架相當不錯:https://github.com/jamiemthomas/jquery-datalink。 – 2011-01-07 04:51:41