在一个对象中添加多个数据

时间:2018-11-29 10:23:15

标签: javascript jquery angularjs servicenow

伙计,这是现在的服务代码,但是我对此有Java脚本疑问,我正在尝试在marquee

中显示数据
<div>
<marquee><b ng-repeat='val in data.arr'><label>{{val.display_field}}</label></b></marquee>
</div>

从服务器端获取数组。

(function() {
    data.arr = [];
    var record={};
    var display_value='';
    var announce=new GlideRecord('announcement');
    announce.addQuery('active=true');
    announce.query();
    while(announce.next()){
        display_value = announce.getValue('name') ;
        record.display_field=display_value; 
    }
    data.arr.push(record);

})();

我将在announce.getValue('name')中得到一个多于test,test1,test2..的值。我想将这些值存储为数组中的单个对象,

[
    {
    display_field:test
    },
    {
    display_field:test1
    }
]

我的坏人,选取框仅显示最终值,即test2。object覆盖先前的值。如何获取数组中的所有值?

2 个答案:

答案 0 :(得分:0)

您的代码在此plunker中运行良好。另外,请检查以下代码,以通过单击按钮添加动态公告。

控制器:

  $scope.data = {
    arr: [{
      display_field: 'test'
    },{
      display_field: 'test1'
    }]
  };
  $scope.getMoreAnnouncment = function(){
    var newAnnoucement = {
      display_field: 'test' + ($scope.data.arr.length + 1)
    }
    $scope.data.arr.push(newAnnoucement);
  }

模板:

   <marquee>
      <div>
         <b ng-repeat='val in data.arr'>
           <label>{{val.display_field}}</label>
         </b>
      </div>
   </marquee>
   <button ng-click="getMoreAnnouncment()">Add one More</button>

答案 1 :(得分:0)

解决方案!

我们每次必须清除record个对象和display_value,然后才创建一个新对象。

(function(){     data.arr = [];

var announce=new GlideRecord('announcement');
announce.addQuery('active=true');
announce.query();
while(announce.next()){
    var record={};
    var display_value='';
    display_value = announce.getValue('name') ;
    record.display_field=display_value; 
}
data.arr.push(record);

})();