Javascript 基于单选按钮结合文本框的AngularJS过滤表
我是angularjs新手,我想在这里实现当我单击一个单选按钮时,文本框应该按特定列过滤表格。当我单击另一个单选按钮时,文本框应按另一列过滤表格。例如,当我单击“sficode”单选按钮时,文本框将根据sficode列过滤表格,当我单击“标题/说明”时,文本框应根据该列“说明”过滤表格Javascript 基于单选按钮结合文本框的AngularJS过滤表,javascript,html,angularjs,Javascript,Html,Angularjs,我是angularjs新手,我想在这里实现当我单击一个单选按钮时,文本框应该按特定列过滤表格。当我单击另一个单选按钮时,文本框应按另一列过滤表格。例如,当我单击“sficode”单选按钮时,文本框将根据sficode列过滤表格,当我单击“标题/说明”时,文本框应根据该列“说明”过滤表格 提前感谢..我重写了您的部分代码。现在,表中的ng重复看起来像 <tr ng-repeat="corrItem in CorrItems|filter: searchText"> <td &g
提前感谢..我重写了您的部分代码。现在,表中的ng重复看起来像
<tr ng-repeat="corrItem in CorrItems|filter: searchText">
<td >{{corrItem.SFICode}}</td>
<td>{{corrItem.Desc}}</td>
</tr>
您可能可以进一步清理您的代码,无论如何,坚持我创建的原始代码,您可以尝试。这将有助于您:
一些一般性的建议,使用大写字母,并在css文件中收集您的样式属性
Angular中的数组不应以大写字母开头(Corriems->Corriems),对象属性(SFICode->SFICode)等也不应以大写字母开头
$scope.CorrItems=[{"SFICode":"803.025.01","Desc":"Repair coupling of the discharge pump of the Bilge Water Separator"},{"SFICode":"823.125.01","Desc":"pump of the Bilge Water Separator"},]
<tr ng-repeat="corrItem in CorrItems|filter: searchText">
<td >{{corrItem.SFICode}}</td>
<td>{{corrItem.Desc}}</td>
</tr>
<fieldset class="form-group">
<legend>Search</legend>
<input type="radio" name="Search" id="rdoSfiCode" value="SFICode" ng-model="radioValue">
<label for="rdoSfiCode">SfiCode</label>
<input type="radio" name="Search" id="rdoTitleDisc" value="Desc" ng-model="radioValue">
<label for="rdoTitleDisc">Title/Discription</label><br>
<input ng-model="searchText[radioValue]" ng-init="searchText = {}; radioValue='SFICode'" type="text" />
</fieldset>
<input type="radio" name="filter" value="SFICode" ng-model="filter" ng-change="clearFilter()">
<label for="rdoSfiCode">SfiCode</label>
<input type="radio" name="filter" value="Desc" ng-model="filter" ng-change="clearFilter()">
<label for="rdoTitleDisc">Tile/Discription</label>
<input type="text" ng-model="search[filter]" />
<table>
<tr ng-repeat="(key,value) in data | filter:search">
<td>{{value.SFICode}}</td>
<td>{{value.Desc}}</td>
</tr>
</table>
var app = angular.module("myapp", []);
app.controller("main", function($scope) {
$scope.data = [{
SFICode: "803.025.01",
Desc: "Repair coupling of the discharge pump of the Bilge Water Separator"
}, {
SFICode: "823.125.01",
Desc: "pump of the Bilge Water Separator"
}];
$scope.clearFilter = function() {
$scope.search = {};
}
});