1

我有一个包含几个字段的表单,我试图只获取修改后的字段。这是我到目前为止得到的(简化版):

<form name="formTicket">

                        <div class="item title">
                            <label for="category-assignation"><?php echo T::_("Assignation :")?></label>
                            <textarea type="text" name="assignation" cols="50" rows="4" id="category-assignation" data-ng-model="ticket.assignation"></textarea>
                        </div>
                        <div class="item title">
                            <input id="save" type="submit" value="Save" data-ng-click="saveTicketInfo()"  />
                        </div>
                    </form>

在我的 controller.js 中,我有:

$scope.saveTicketInfo =  function() {
                    console.info($scope.ticket);
                    console.info($scope.formTicket);
                    //Query to my service to save the data
                    Category.saveInfo.query({data: $scope.ticket});
                };

在 AngularJs 之前,我会在加载表单时将字段保存在一个数组中,并将它们的值与发布的新值进行比较。我仍然可以这样做,但我正在寻找一种 AngularJs 方法。

我一直在尝试使用每个字段的 $dirty 属性,并且只向我的服务发送那些具有“true”值但这种行为不适合我的服务:如果我的字段的默认值是“test”并且用户修改输入“test2”并将其修改回“test”并发布,$dirty 将为真(即使该值没有真正改变)。

有什么方便和最佳的方法来实现我想要的吗?

感谢您的时间。

4

0 回答 0