ng-table 使用用户输入的过滤器
ng-table work with user inputted filter
我有一个场景,我将对 ng-table 进行页面刷新,但我不想在页面刷新时丢失任何用户输入的过滤器。
想法是将用户输入的数据存储在控制器中,然后在页面刷新后将该数据推回过滤器输入框。
<table ng-table="tableParams" class="table" show-filter="true">
<tr ng-repeat="user in $data">
<td title="'Name'" filter="{ name: 'text'}" sortable="'name'">
{{user.name}}</td>
<td title="'Age'" filter="{ age: 'number'}" sortable="'age'">
{{user.age}}</td>
</tr>
<p>name = {{ params.filter()[name] }}</p> //i thought this might be the way to get the filter data
此处示例:https://plnkr.co/edit/z98RLOX9AUOoX9c7x00d?p=preview
如果我在 "name" 过滤器框中键入 "mor",我希望能够在我的控制器中使用 "mor" 在页面刷新后将其推回过滤器,这样用户就不会丢失他们使用过的任何搜索过滤器。
这可能吗?
要获取过滤数据,可以使用tableParams.filter()。
<p>name = {{ tableParams.filter()['name'] }}</p>
并且您可以使用 'sessionStorage' 来保留搜索过滤器。那么页面刷新后数据不会丢失。
我有一个场景,我将对 ng-table 进行页面刷新,但我不想在页面刷新时丢失任何用户输入的过滤器。
想法是将用户输入的数据存储在控制器中,然后在页面刷新后将该数据推回过滤器输入框。
<table ng-table="tableParams" class="table" show-filter="true">
<tr ng-repeat="user in $data">
<td title="'Name'" filter="{ name: 'text'}" sortable="'name'">
{{user.name}}</td>
<td title="'Age'" filter="{ age: 'number'}" sortable="'age'">
{{user.age}}</td>
</tr>
<p>name = {{ params.filter()[name] }}</p> //i thought this might be the way to get the filter data
此处示例:https://plnkr.co/edit/z98RLOX9AUOoX9c7x00d?p=preview
如果我在 "name" 过滤器框中键入 "mor",我希望能够在我的控制器中使用 "mor" 在页面刷新后将其推回过滤器,这样用户就不会丢失他们使用过的任何搜索过滤器。
这可能吗?
要获取过滤数据,可以使用tableParams.filter()。
<p>name = {{ tableParams.filter()['name'] }}</p>
并且您可以使用 'sessionStorage' 来保留搜索过滤器。那么页面刷新后数据不会丢失。