Не удалось изменить объект javascript

0

Я не могу изменить объект после обновления нулевого значения в объекте.

Объяснение:

  1. В приведенном ниже изображении, как вы можете видеть, я устанавливаю флажок со значением buff1, при выборе флажка поле ввода под ним будет отключено.
  2. Теперь нажмите на кнопку "Применить". то значения в нижнем из них, то есть, 1 и 2, будут обновляться в запрещенных вводах.

Как вы можете видеть в jsfiddle

Рабочая демонстрация

Изображение 174551

Теперь мне нужно что-то вроде,

  1. Когда я устанавливаю флажок рядом с buff1, поля ввода ниже его будут отключены, а затем значения внутри него будут пустыми.

    Как я пытался в выражении $ watch

Пример:

//modifyObject(list, 'SS', '');//Try uncommenting these 2 lines
//modifyObject(list, 'AA', '');
  1. А затем нажав кнопку "Применить", значение должно быть обновлено, но этого не происходит

Я считаю, что в этом что-то не так

Теперь вы, ребята, поняли вопрос, пожалуйста, дайте мне знать, если вам нужно больше объяснений.

Я чувствую, что проблема здесь

var modifyObject = function(object, key, value) {
            Object.defineProperty(object, key, {
                value: value,
                writable: true,
                enumerable: true
            });
        };
Теги:
angularjs-scope

2 ответа

0

Ваша проблема исходит из атрибута, отмеченного флажком, если вы посмотрите, "bufferValue.checked" - это строка, тогда "ложь" или "истина" верны дважды.

Я рекомендую вам написать ng-disabled что-то вроде этого:

ng-disabled="bufferValue.checked == 'true' && bufferValue"
0

Здесь один рабочий пример, который вы хотите, когда вы установили флажок, значение будет сброшено на 0, и щелчок будет применять значение к приведенному ниже вводу.

http://jsfiddle.net/asrf4658/21/

Я видел, что у вас есть одна отсутствующая функция ng-click = "setGlobalvalue()"

$scope.setGlobalvalue = function(status){
  if(status) {
    $scope.bufferValues[0].SS = 0;
    $scope.bufferValues[0].AA = 0;
  }
}

Ещё вопросы

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