2015-08-18 7 views
-1

Привет У меня есть JSON как это:метки входов показать аа элемент массива

pages[ 
{ 
    "id": "74682309", 
    "labels": [ 
     { 
     "term": "test1", 
     "probability": 0.069 
     }, 
     { 
     "term": "test2", 
     "probability": 0.037 
     } 
    ] 
}]; 

и использование тегов-вход я хочу теги читать только член и показать термин, так что я могу показать и Обновить.

я есть

<tags-input ng-model="se.labels"></tags-input> 

«себе» происходит от нг-повторе = "се в searchCtrl.pages

+1

'se.labels .term' не будет делать трюк? –

+0

нет, потому что у se.labels есть несколько терминов, и я думаю, когда я ставлю термин, просто он знает, что он один, его не повторяют над ярлыками на каждом члене. Я думаю, – voidcurser

ответ

0

На основе документации (http://mbenford.github.io/ngTagsInput/documentation/api) вы можете изменить keyProperty и displayProperty, чтобы сделать его использовать «термин» вместо «текст»

+0

Сделано просто нужно было изменить displayProperty, и это сработало благодаря – voidcurser

0

я создал скрипку, чтобы продемонстрировать, как вы можете получить необходимы данные, учитывая, что предоставленный 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> 

Вот скрипка:

http://jsfiddle.net/HB7LU/16554/

Update:

Вы не включили угловое ng-tags-input расширение в качестве тега в ваш вопрос. Пожалуйста, смотрите мою обновленную скрипку:

http://jsfiddle.net/HB7LU/16557/

+0

, что часть у меня есть моя проблема в том, как тег-ввод может читать и работайте с ним, если у меня есть массив вроде этого var example = ["teste", "teste2"], тэг-ввод работает нормально, но когда я пытаюсь использовать другой, он не делает – voidcurser

+0

Я действительно не понимаю вашу проблему. Я предоставил рабочее решение на основе ваших данных. –

+0

если вы используете <теги-ввод ng-model = "tags"> и теги находятся на вашем контроллере $ scope.tags = [{text: "teste"}] u будет иметь панель ввода с соответствующими тегами i хочу иметь тот же самый efect, но соответствующие теги должны быть термином моего документа , но тег-вход не распознает «термин», я думаю, потому что, если я изменю свой JSON и заменим слово термином текстом, он отлично работает – voidcurser