Как отобразить только обновленные данные формы в angularjs?

0

Я пытаюсь отобразить только обновленные значения в контроллере, но я получаю полные данные. Как я могу получить только обновленные значения?

Поле ввода:

 <div class="" ng-repeat="fields in containerDetails.containerFields">
    <input type="{{features.input}}"  minlength="{{features.rules[0].minlength}}" maxlength="{{features.rules[0].maxlength}}" required name="{{name}}" ng-model="features.name" >
    </div>
<button ng-click="save()">Save</button>

При нажатии на сохранение следует передавать обновленные значения только контроллеру.

 .controller('DemoCtrl', function($scope, $http) {

            $http.get('json/test.json').
            success(function(data, status, headers, config) {
                $scope.containerDetails=data;

                console.log(data);
                $scope.mode=data.containerProperties.mode;
                $scope.user=data.containerProperties.role;
                console.log($scope.user);
                }).
            error(function(data, status, headers, config) {
                console.log("error");
            });


    $scope.save = function() {

    $scope.msg = 'Data sent: '+ JSON.stringify($scope.containerDetails);

        console.log($scope.msg);
  };

У меня JSON:

"containerFields": [

      {
        "label": "First Name",
        "name": "first_name",
        "placeholder": "Enter Your first name",
        "primary": "no",
        "required": "yes",
        "type": "text",
        "input":"text",
        "enum": "false",
        "access":"user",
          "minlength":"10",
            "maxlength":"150",
        "rules": [{
            "message":"Enter First Name",
            "minlength":"10",
            "maxlength":"150",
            "elementValidate":"aplha"
        }]
      },
      {
        "label": "Email",
        "name": "email",
        "placeholder": "Enter Your email",
        "primary": "no",
        "required": "yes",
        "type": "text",
        "input": "email",
        "access":"user",
        "rules": [{
            "message":"Enter valid email",

            "elementValidate":"email"
        }]
      }
]
Теги:

1 ответ

0

Запишите значения в отдельной структуре данных. Безопасная функция может получить доступ ко всем значениям через $scope.data.

<input type="{{features.input}}"  minlength="{{features.rules[0].minlength}}" maxlength="{{features.rules[0].maxlength}}" required name="{{name}}" ng-model="data[features.name]" >
  • 0
    Спасибо за ответ. Пожалуйста, объясните мне, как я могу сделать таким образом. благодарю вас
  • 0
    Посмотрите на код, который я предоставил в своем ответе. Используйте ng-model="data[features.name]" вместо ng-model="features.name"

Ещё вопросы

Сообщество Overcoder
Наверх
Меню