私はServiceNowで作業しており、印刷オプションとともにケースのリストを表示するウィジェットを作成しています。選択されたCases and Printing Optionに基づいて配列を生成したいのですが、クライアントスクリプトとサーバースクリプトの間で問題を渡す際に問題があります。以下は私のHTMLとウィジェットがどのように見えるかのスナップショットです:上記の表にServiceNow angularjsクライアント/サーバスクリプト通信
<div class="btn-group" role="group">
<button id="btnGroupDrop1" type="button" class="btn btn-primary dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
Printing Options <i class="fa fa-caret-down"/>
</button>
<div class="dropdown-menu" aria-labelledby="btnGroupDrop1" >
<li ng-repeat="print in c.docSetPrint">
<a class="dropdown-item" href="#">{{print.document_set_name}}</a>
</li>
</div>
</div>
<table id="print_table" class="table table-striped table-hover table-responsive">
<thead>
<tr>
<th><input type="checkbox" id="selectAll"/></th>
<th>${Case Number}</th>
<th>${Short Description}</th>
<th>${Start Date}</th>
<th>${Work Location}</th>
</tr>
</thead>
<tbody>
<tr ng-repeat="item in c.ONCase track by $index">
<td><input type="checkbox" id="{{item.number}}"/></td>
<td>{{item.number}}</td>
<td>{{item.short_description}}</td>
<td>{{item.start_date}}</td>
<td>{{item.location}}</td>
</tr>
</tbody>
</table>
が、私は、各エントリをループしたいと思いますし、それが選択またはチェックされた場合、その後、戻ります選択されたすべてのケース番号の配列。私のクライアントのスクリプトでは、これまでのようなものがあります:
c.printDocs = function(){
var arr = [];
for(i=0; i<c.data.ONCase.length; i++){
if(document.getElementById(c.data.ONCase[i].number).checked == true){
arr.push({
case_num: c.dataONCase.number <--??
});
}
}
c.server.get({
action: 'print_docs',
cases: arr
})then(function(response) {
// do stuff after
});
};
私はクライアントとサーバーのスクリプトの間でスクリプトをどのようにしているのかかなり混乱しています。ケースナンバーの配列を取得したら、それをどのようにサーバーに渡すのですか?