0
good morning!
I’m having a huge problem trying to use the Smart Table, with paging, filter and searching in my table.
I had the table working when I converted a JSON that consumed by an object request. In this case, I did:
$scope.estoque = JSON.parse(data.data);
The problem came when I needed to include paging, sorting, and searching. So using Smart Table, that until then I was attending to what I needed, this, while did not need to order nor search in a table.
In this case, to use the functionality of the table, my table array cannot be object as it was before, it needs to be JSON. Which in this case has the format below:
$scope.estoqueJSON = data.data;
[
{
"EstoqueId": 553,
"DescricaoEstoque": null,
"NomeMaterial": "Cabo de Fibra Óptica 04FO Multimodo - Indoor / Outdoor - 62,5/125 Furukawa",
"CodigoMaterial": "100",
"Ni": "",
"QtdMaterial": 3.0,
"QtdMin": 0.0,
"Unidade": "m",
"MaterialId": 1
}
]
Following what you say on the website of smart table and Angularjs 1, I then created the table as follows:
<table st-table="estoqueStr" st-set-filter="myStrictFilter" class="table table-striped table-responsive">
<thead style="text-align:center;">
<tr>
<th st-sort="CodigoMaterial" style="width:20px; font-weight:bold; text-align:center;">Código</th>
<th st-sort="Ni" style="width:20px; font-weight:bold; text-align:center;">Ni</th>
<th st-sort="NomeMaterial" style="width:20px; font-weight:bold; text-align:center;">Material</th>
<th st-sort="Unidade" style="width:20px; font-weight:bold; text-align:center;">UNI.</th>
<th st-sort="QtdMaterial" style="width:20px; font-weight:bold; text-align:center;">Qtd</th>
<th st-sort="QtdMin" style="width:20px; font-weight:bold; text-align:center;">Qtd Min.</th>
</tr>
<tr>
<th style="width:20px;">
<input style="text-align:center;" st-search="CodigoMaterial" placeholder="Código material" class="input-sm form-control" type="search" />
</th>
<th style="width:20px; text-align:center;">
<input style="text-align:center;" st-search="Ni" placeholder="Ni" class="input-sm form-control" type="search" />
</th>
<th style="width:auto; text-align:center;">
<input style="text-align:center;" st-search="NomeMaterial" placeholder="Nome material" class="input-sm form-control" type="search" />
</th>
<th style="width:10px; text-align:center;">
<input style="text-align:center;" st-search="Unidade" placeholder="Unidade" class="input-sm form-control" type="search" />
</th>
<th style="width:10px; text-align:center;">
<input style="text-align:center;" st-search="QtdMaterial" placeholder="Qtde atual" class="input-sm form-control" type="search" />
</th>
<th style="width:10px; text-align:center;">
<input style="text-align:center;" st-search="QtdMin" placeholder="Qtde mínima" class="input-sm form-control" type="search" />
</th>
</tr>
</thead>
<tbody id="" class="">
<tr ng-repeat="e in estoqueJSON | filter : paginate | orderBy:sortType:sortReverse | filter:searchField track by $index">
<td ng-repeat-start="item in e.value"></td>
<td style="text-align:center;">{{item.CodigoMaterial}}</td>
<td style="text-align:center;">{{item.Ni}}</td>
<td>{{item.NomeMaterial}}</td>
<td style="text-align:center;">{{item.Unidade}}</td>
<td style="text-align:right; color:black;">
<span e-form="tableform" editable-number="e.QtdMaterial" onbeforesave="checkQtdEstoque(e, $data)">{{item.QtdMaterial}}</span>
</td>
<td style="text-align-last:right; color:black;" ng-repeat-end>
<span editable-number="e.QtdMin" e-form="tableform" onbeforesave="checkQtdMin(e, $data)">{{item.QtdMin}}</span>
</td>
</tr>
</tbody>
</table>
I don’t know why the hell not the error and it also doesn’t display the JSON data. >( Can anyone tell me what knife I’m making ? Thank you very much!
Angularjs: 1.3