AngularJS ,添加了 2 个带有 id 和 ng-model 的额外输入文本框,但它们没有被提交

AngularJS , adding 2 extra input text boxes with id and ng-model and they are not getting submitted

我一直在修改我做过很多次的表格。这次有人我不明白为什么它不发送 2 个额外的字段

控制器

vm.question = {};

现在大部分时间它们都是空白的,但我不记得有没有发送空白字段值的问题

有效的现有字段

<div class="form-group">
   <label class="col-md-2" for="english">Spanish</label>
   <div class="col-md-10">
     <input type="text" ng-model="vm.question.VerbiageSpanish"
             id="verbiagespanish" name="verbiagespanish"
             class="form-control"
             placeholder="Spanish" />
   </div>
</div>

新字段已添加到表单 ng-model 但未在保存时提交

<div class="form-group">
   <label class="col-md-2" for="english">Parent ID</label>
     <div class="col-md-10">
       <input type="text" ng-model="vm.question.ParentId"
             numbers-only style="width:30px" id="parentid"
             name="parentid" class="form-control" />
     </div>
 </div>
<div class="form-group">
     <label class="col-md-2" for="english">Parent Value</label>
     <div class="col-md-10">
     <input type="text" ng-model="vm.question.ParentValue"
            style="width:220px" id="parentvalue" name="parentvalue" 
            class="form-control"
            placeholder="Parent Value" />
     </div>
</div>

代码示例,请注意它具有 VerbiageSpanish 和除新的 ParentId 和 ParentValue 之外的所有其他字段 这怎么可能?

{
  "Active": true,
  "Name": "test",
  "Description": "test",
  "Verbiage": "test",
  "VerbiageSpanish": "test",
  "directive": {
    "1": true
  },
  "data": {
    "1": "yes"
  },
  "SortOrder": {
    "1": "2"
  }
}

根据评论更新:

  1. 如果我填写 ParentId 和 ParentValue,然后我看到它被发送过来,因为我什至 console.log 看到它

  2. 表单提交按钮

     <button type="button" class="btn btn-success" data-dismiss="modal"
             ng-click="vm.saveQuestion(vm.question)">
        Save
     </button>
    
  3. 控制器将所有内容发送到服务,因此当没有任何值

    时,显然甚至不会发送到 API
    vm.saveQuestion = function (script) {
        var promise = "";
        console.log('savequestion debug', script);
    

当我将数据输入这些文本框时,我看到了这个

{
  "Active": true,
  "Name": "test",
      "ParentId" : "22",
      "ParentValue": "afafaf",
  "Description": "test",
  "Verbiage": "test",
  "VerbiageSpanish": "test",
  "directive": {
    "1": true
  },
  "data": {
    "1": "yes"
  },
  "SortOrder": {
    "1": "2"
  }
}

我认为要么像在控制器中一样初始化这些键

vm.question.VerbiageSpanish = "";
vm.question.ParentId = "";
vm.question.ParentValue = "";

在这些字段中使用 ng-init=""

<input type="text" ng-model="vm.question.ParentValue"
       style="width:220px" id="parentvalue" name="parentvalue" 
       class="form-control"
       ng-init="" placeholder="Parent Value" />