問題描述:
資料型別是 result = ,...],'key2':[,...],...},
需轉換成dataobj = ;
頁面:mainfrom.js,mainfrom.html,subto.js,subto.html;
將在mainfrom.js中查詢到的dataobj 繫結到subto.html上。
js檔案的結構符合amd規範,如下:
1 define([ 'jquery', 'knockout', 'html檔案路徑+檔名.html'], function($, ko, template) ;6 var init = function(args) ;
9 return;
14 });
解決方法:
1. 在mainfrom.js中查詢到result的值,將result的屬性對應的值轉為observablearray型別。使用ajax查詢;
2. 使用require(,function(){})呼叫subto.html,並將dataobj的屬性附加到subto.js的viewmodel上;
**如下:
1 define([ 'jquery', 'knockout', 'html檔案路徑+檔名.html'], function($, ko, template) ;//根據需要修改13 require(["subto路徑+subto(不加.html字尾)"], function(module)
18
19 $("#subtodiv").html(module.template);//載入subto的區域,module.template是subto.html
20 module.init(args);的入口
21 });
22 }
23 };
24 var init = function(args) ,//傳遞到後台的引數
29 success :function(result)
35 }
36 }
37 });
38 };
39 return;
44 });
這時subto的viewmodel有了key1,key2,...等ko陣列,將它們繫結到subto.html對應的select標籤上
3. 繫結
1<
div>
2<
select
data-bind
="foreach:key1()"
>
3<
option
data-bind
="attr:,text:name"
>
option
>
4select
>
5<
select
data-bind
="foreach:key2()"
>
6<
option
data-bind
="attr:,text:name"
>
option
>
7select
>
8div
>
為了得到而努力
2018-07-11
合併陣列物件中相同的屬性值
面試題中往往會遇到這樣的筆試題,將以下陣列物件合併相同值 var arr 在實際專案中,我們經常會遇到這種格式的資料,這種格式讓人閱讀起來很不直觀,而且不利於 的維護。廢話不多說了直接上 第一種方式 var res var narr for var i 0 i else console.log na...
修改物件的某個屬性的值 什麼是類,什麼是物件
一什麼是類?類是物件的 靈魂 物件可以是任何事物,而類不會做任何事情,也不會占用記憶體,只有當類成為物件並使用set語句和new關鍵字例項化為具體物件後,才能做事情並占用記憶體。把類例項化為具體物件的語法為 dim c as class set c new class 上述語句建立了乙個名為c的物件...
js 向陣列物件中新增屬性和屬性值
let resultlist resultlist.foreach tem 迴圈向陣列resultlist中新增age屬性let resultlist resultlist.foreach item 向陣列中的子屬性新增屬性 var jsonstr json.stringify resultlist...