

サーバーでEmployee とういうjsonを作成し、画面表示時に以下のようにデータを画面に渡して、  
このdata-
employeeをなんとかknockout.jsで取得して、knockout.jsの方でデータを編集したものをeditedListとして画面のテーブルに表示したいですが
このEmployeeのデータをどうやったらknockout.jsの方で読み込めるのでしょうか？

・ HTML

[code]

    <table id="table" data-employee={{ Emplyee }}>
     <thead>
      <tr>
        <td>名前</td>
        <td>苗字</td>
        .
        .
      </tr>
     </thread>
     <tbody data-bind="foreach: editedList">
      <tr>
        <td data-bind="text: firstName"></td>
        <td data-bind="text: secondName"></td>
        .
        .       
      </tr>
     </body>
    </table>
    
[/code]

・ Knockout.js

[code]

    //１.　ここにEmployeeデータを取得する処理
    
    //２.　Employeeデータを使って一覧表示用データを作成する
    
    //３.　２で作成したデータを以下のような感じで画面にバインドする
    ko.applyBindings({
        editedList: [
            { firstName: 'Bert', entryDate: 'xxxx-xx-xx' },
            { firstName: 'Charles', lastName: 'xxxx-xx-xx' },
            { firstName: 'Denise', lastName: 'xxxx-xx-xx' }
        ]
    });
    
[/code]


CC BY-SA 3.0
2016-05-14T14:21:17.287
24859
2016-11-21T16:03:28.093
2016-05-15T06:41:48.807
8000
15499
question
javascript knockout.js sails.js
knockout.js で サーバからビューに送られたJSONを取得したい。


data-employee には json 文字列として渡し、kockout 側で JSON.parse にすれば良い、という回答なのですが、json
の作り方はサーバサイドの言語によって異なります。  
何をお使いなのでしょうか？

一例として、rails だとこんな感じになりそうです  
(スミマセン。今は手元に環境がないので、イメージです。  
raw はサニタイズせずに出力、escapse_javascript は json を文字列化するのに必要なはずです。)

[code]

    # sample.html.erb
    <table id="table" data-employee='<%= escape_javascript(raw(@employee.to_json))) %>'>
    
    # sample.js
    jsonString = $("#table").data("employee");
    employee = JSON.parse(jsonString);
    
[/code]


CC BY-SA 3.0
2016-05-14T23:45:26.897
24865
2016-05-14T23:45:26.897
7471
24859
answer