Javascript ng选项上的AngularJS strip HTML过滤器
我正在尝试创建一个自定义过滤器,在我的选择菜单上剥离HTML。这是我尝试过的,但不起作用Javascript ng选项上的AngularJS strip HTML过滤器,javascript,angularjs,Javascript,Angularjs,我正在尝试创建一个自定义过滤器,在我的选择菜单上剥离HTML。这是我尝试过的,但不起作用 <select ng-options="item.name for item in list | htmlToPlaintext"> <option value="">Select</option> </select> 挑选 它正在呈现空值
<select
ng-options="item.name for item in list | htmlToPlaintext">
<option value="">Select</option>
</select>
挑选
它正在呈现空值
app.filter('htmlToPlaintext',
function () {
return function (items) {
var filtered = [];
angular.forEach(items, function (item) {
var stripped = String(item).replace(/<[^>]+>/gm, '');
filtered.push(stripped);
});
return filtered;
}
});
app.filter('htmlToPlaintext',
函数(){
返回函数(项目){
var筛选=[];
角度。forEach(项目、功能(项目){
var=字符串(项)。替换(/]+>/gm',);
过滤、推送(剥离);
});
返回过滤;
}
});
是否有人将这种类型的过滤器应用于Angular中的ng选项 您需要修改如下所示的过滤器以及html代码段。您可以应用过滤器,而不是整个项目,而是每个标题 以下是演示:
angular.module('selectFilters',['filters']);
角度.module('filters',[]).filter('htmlToPlaintext',function(){
返回函数(文本){
返回字符串(文本)。替换(/]+>/gm',);
}
});
函数ItemCtrl($scope$filter){
$scope.Items=[
{ID:'000001',标题:'Chicago'},
{ID:'000002',标题:'纽约'},
{ID:'000003',标题:'华盛顿'}
];
}
谢谢;这帮了我的忙。