Подтвердить что ты не робот

Флажок Angularjs установлен по умолчанию при загрузке и отключен. Выберите список, если он установлен.

noob при переполнении стека. Я работаю над веб-страницей, которая имеет функцию передачи задания. Это позволяет пользователю установить флажок, чтобы отправить задание обратно в офис или выбрать специалиста из списка всех доступных. Мой вопрос заключается в том, как установить флажок, чтобы он был проверен по умолчанию, когда страница загружается и соответственно отключен список выбора. Вот код, который у меня есть на данный момент:

<div ng-app="">
  Send to Office: <input type="checkbox" ng-model="checked" ng-checked="true"><br/>
  <select id="transferTo" ng-disabled="checked">
    <option>Tech1</option>
    <option>Tech2</option>
  </select>
</div>

и вот для него jsfiddle: http://jsfiddle.net/hugmungus/LvHJw/5/

В настоящее время страница загружается с установленным флажком, но список не отключен. Если вы отмените проверку, повторите проверку, список будет отключен.

Спасибо за помощь!

4b9b3361

Ответ 1

Если вы используете ng-модель, вы не хотите также использовать ng-checked. Вместо этого просто инициализируйте переменную модели true. Обычно вы делаете это в контроллере, который управляет вашей страницей (добавьте ее). В вашей скрипке я просто выполнил инициализацию в атрибуте ng-init для демонстрационных целей.

http://jsfiddle.net/UTULc/

<div ng-app="">
  Send to Office: <input type="checkbox" ng-model="checked" ng-init="checked=true"><br/>
  <select id="transferTo" ng-disabled="checked">
    <option>Tech1</option>
    <option>Tech2</option>
  </select>
</div>

Ответ 2

Сделайте это в контроллере (в качестве синтаксиса контроллера ниже)

контроллер:

vm.question= {};
vm.question.active = true;

форма

<input ng-model="vm.question.active" type="checkbox" id="active" name="active">

Ответ 3

Вам действительно не нужна директива, вы можете ее достичь, используя ng-init и ng-checked. ниже демонстрационной ссылки показано, как установить начальное значение для флажка в angularjs.

демонстрационная ссылка:

<form>
    <div>
      Released<input type="checkbox" ng-model="Released" ng-bind-html="ACR.Released" ng-true-value="true" ng-false-value="false" ng-init='Released=true' ng-checked='true' /> 
      Inactivated<input type="checkbox" ng-model="Inactivated" ng-bind-html="Inactivated" ng-true-value="true" ng-false-value="false" ng-init='Inactivated=false' ng-checked='false' /> 
      Title Changed<input type="checkbox" ng-model="Title" ng-bind-html="Title" ng-true-value="true" ng-false-value="false" ng-init='Title=false' ng-checked='false' />
    </div>
    <br/>
    <div>Released value is  <b>{{Released}}</b></div>
    <br/>
    <div>Inactivated  value is  <b>{{Inactivated}}</b></div>
    <br/>
    <div>Title  value is  <b>{{Title}}</b></div>
    <br/>
  </form>

// Code goes here

  var app = angular.module("myApp", []);
        app.controller("myCtrl", function ($scope) {

         });