tags-input 显示数组的一个元素
tags-input show a a element of an array
嗨,我有一个 JSON 这样的:
pages[
{
"id": "74682309",
"labels": [
{
"term": "test1",
"probability": 0.069
},
{
"term": "test2",
"probability": 0.037
}
]
}];
并使用标签输入,我希望标签只读取术语并显示术语,以便我可以显示和更新。
我有
<tags-input ng-model="se.labels"></tags-input>
'se' 来自 ng-repeat="se in searchCtrl.pages
我创建了一个 fiddle 来演示如何获取所需的数据,考虑到所提供的 JSON 是 有效 JSON.您的 JSON 无效。
var myApp = angular.module('myApp',['ngTagsInput']);
myApp.factory('data', function() {
var data = [
{
"id": "74682309",
"labels": [
{
"text": "test1",
"probability": 0.069
},
{
"text": "test2",
"probability": 0.037
}
]
}];
return data;
});
myApp.controller('MyCtrl', ['$scope', 'data', function($scope, data) {
var values = [];
data.map(function(elem) {
return elem.labels.forEach(function(el) {
values.push({
"text" : el.text
});
});
});
$scope.tags = values;
}]);
和 html 部分:
<div ng-controller="MyCtrl">
<div class="elem">
<tags-input ng-model="tags"></tags-input>
</div>
</div>
这里是 fiddle:
http://jsfiddle.net/HB7LU/16554/
更新:
您没有将 angular ng-tags-input
扩展名作为标签包含在您的问题中。请查看我更新的 fiddle:
根据文档 (http://mbenford.github.io/ngTagsInput/documentation/api),您可以更改 keyProperty 和 displayProperty 以使其使用 "term" 而不是 "text"
嗨,我有一个 JSON 这样的:
pages[
{
"id": "74682309",
"labels": [
{
"term": "test1",
"probability": 0.069
},
{
"term": "test2",
"probability": 0.037
}
]
}];
并使用标签输入,我希望标签只读取术语并显示术语,以便我可以显示和更新。
我有
<tags-input ng-model="se.labels"></tags-input>
'se' 来自 ng-repeat="se in searchCtrl.pages
我创建了一个 fiddle 来演示如何获取所需的数据,考虑到所提供的 JSON 是 有效 JSON.您的 JSON 无效。
var myApp = angular.module('myApp',['ngTagsInput']);
myApp.factory('data', function() {
var data = [
{
"id": "74682309",
"labels": [
{
"text": "test1",
"probability": 0.069
},
{
"text": "test2",
"probability": 0.037
}
]
}];
return data;
});
myApp.controller('MyCtrl', ['$scope', 'data', function($scope, data) {
var values = [];
data.map(function(elem) {
return elem.labels.forEach(function(el) {
values.push({
"text" : el.text
});
});
});
$scope.tags = values;
}]);
和 html 部分:
<div ng-controller="MyCtrl">
<div class="elem">
<tags-input ng-model="tags"></tags-input>
</div>
</div>
这里是 fiddle:
http://jsfiddle.net/HB7LU/16554/
更新:
您没有将 angular ng-tags-input
扩展名作为标签包含在您的问题中。请查看我更新的 fiddle:
根据文档 (http://mbenford.github.io/ngTagsInput/documentation/api),您可以更改 keyProperty 和 displayProperty 以使其使用 "term" 而不是 "text"