Javascript 按钮仅重置选择器,而不重置与所选选项相关的数据

Javascript 按钮仅重置选择器,而不重置与所选选项相关的数据,javascript,html,angularjs,Javascript,Html,Angularjs,有一个表有一个过滤器,可以从中选择下拉菜单选项,该表将仅显示type=selected type的数据 还有一个按钮用于将选择器重置为第一个选项 我遇到的问题是,我无法使这两个功能同时运行: 用于更新表上数据的选择器 重置按钮将选择器和表格重置为第一个选项 这是选择器和按钮的html代码: <select ng-model="$ctrl.type"> <option value="">all</option> <option valu

有一个表有一个过滤器,可以从中选择下拉菜单选项,该表将仅显示
type=selected type
的数据

还有一个按钮用于将选择器重置为第一个选项

我遇到的问题是,我无法使这两个功能同时运行:

  • 用于更新表上数据的选择器
  • 重置按钮将选择器和表格重置为第一个选项
这是选择器和按钮的html代码:

<select ng-model="$ctrl.type">
    <option value="">all</option>
    <option value="1">1</option>
    <option value="2">2</option>
</select>


<div class="btn action-btn" ng-click="$ctrl.doSomething()">
    Reset Filters
</div>
现在的情况是,当我单击“重置”按钮时,它会将选择器重置为第一个选项,但无论我对选择器做了什么,表数据都保持不变

但是,如果将选择器的第一行更改为:

<select ng-model="$ctrl.type">


选择器工作正常,它使用与所选选项相关的数据更新表,但现在“重置”按钮无效


如何使这两个功能同时具备?

您没有在过滤器中引用控制器变量。更改此行:

<tr ng-repeat="rows in $ctrl.myData | filter: {Type:type} track by $index">

为此:

<tr ng-repeat="rows in $ctrl.myData | filter: {Type:$ctrl.type} track by $index">


那么它应该能按预期工作。

在选择器更改时,您会调用哪种方法?我不明白。我调用和使用的都是代码
<select ng-model="type">
<tr ng-repeat="rows in $ctrl.myData | filter: {Type:type} track by $index">
<tr ng-repeat="rows in $ctrl.myData | filter: {Type:$ctrl.type} track by $index">