javascript - 如何序列化对象数组以形成 Angular 字段

标签 javascript angularjs camunda camunda-modeler

我想在我的表单字段中像这样序列化 json:

 {FinalResult: [{"id":1,"organizationNameGE":"პსდა2","organizatio…":"02-16-2018","$$hashKey":"0Q0","priority":"1"}]"}

因此我使用此代码:

<script cam-script type="text/form-script">

    camForm.on('form-loaded', function() {
      // tell the form SDK to fetch the variable named 'document'
      camForm.variableManager.fetchVariable('selectedDocuments');
    });
    camForm.on('variables-fetched', function() {
      // work with the variable (bind it to the current AngularJS $scope)
      $scope.selectedDocuments =ConvertToJsonArray(camForm.variableManager.variableValue('selectedDocuments'));

    });
function ConvertToJsonArray(arr){
var jsonArray=arr.FinalResult;
return jsonArray;
}
  </script>
<div class="container" ng-repeat="item in selectedDocuments track by $index">
<div class="control-group"  >
    <label for="id" class="control-label">საიდენტიფიკაციო კოდი</label>
     <div class="controls">
      <input id="id" class="form-control" type="number" ng-model="item.id" required  readonly/>
    </div>
  </div>
    <div class="control-group" >
    <label for="cardNumber" class="control-label">ბარათის ნომერი</label>
    <div class="controls">
      <input id="cardNumber" class="form-control" type="text" ng-model="item.cardNumber" required />
    </div>
  </div>
   <div class="control-group"  >
    <label for="organizationNameGE" class="control-label">კომპანიის სახელი ქართულად</label>
    <div class="controls">
      <input id="organizationNameGE" class="form-control" type="text" ng-model="item.organizationNameGE" required />
    </div>
  </div>
      <div class="control-group"  >
    <label for="organizationNameEN" class="control-label">კომპანიის სახელი ლათინურად</label>
   <div class="controls">
      <input id="organizationNameEN" class="form-control" type="text" ng-model="item.organizationNameEN" required />
    </div>
  </div>    
   <div class="control-group" >
    <label for="Approved" class="control-label">Approved</label>  
   <input type="checkbox"
       class="form-control" 
       cam-variable-name="Approved"
       cam-variable-type="Boolean"/> 
       </div>       
      <div class="form-group">
      <label for="refusalComment" class="control-label">კომენტარი უარზე</label>
      <input type="text"
           class="form-control" 
           cam-variable-type="String"
           cam-variable-name="refusalComment"
           name="კკომენტარი უარზედ"/>
            </div> 
            </div> 

但这似乎还不够,我应该更改什么才能将此 json 数据显示到我的表单中?我应该使用 ng-for 而不是 ng-repeat 吗?

(注意控制台中没有任何内部错误)

最佳答案

看来您正在数组 FinalResult 中获取数据。 我不确定您为什么使用 selectedDocuments 。

<div class="container" ng-repeat="item in selectedDocuments track by $index">

使用它而不是 selectedDocuments

<div class="container" ng-repeat="item in FinalResult track by $index">

如果有帮助,请告诉我。

关于javascript - 如何序列化对象数组以形成 Angular 字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48899629/

相关文章:

javascript - 将 Grails GSP 自定义标记转换为 AngularJS 指令

javascript - Chart.js - 当浏览器语言不是英语时,x 轴和工具提示标签在 Chrome 中显示 "undefined"

javascript - 相同的语句在 for 循环内给出错误

javascript - md-autocomplete 找到数据,但下拉列表为空

mysql - Camunda/JBOSS 与 MySQL

camunda - Camunda 任务与事件的混淆

java - 如何抛出 Camunda 业务错误?

javascript - 使用ajax提交表单并提交阻止并发送文件控件c#的选定文件

javascript - 我可以强制一个元素显示它的悬停效果吗?

angularjs - 当多个表单中的相同 ng-model 设置为必需时,IE 11 中的验证问题