Включение кнопки с помощью поля выбора - PullRequest
0 голосов
/ 24 июня 2019

Просто у меня есть две радиокнопки, когда выбрана первая радиокнопка, появляется одно поле выбора, а когда радиокнопка выбрана, появляется два поля выбора. После этого у меня есть одна кнопка «ОТПРАВИТЬ», теперь я хочу, чтобы при выборе первого радио тогда была включена кнопка отправки, но когда я выбираю вторую радио кнопку, то кнопка должна быть отключена, пока оба поля выбора не имеют некоторых значение. Я использую форму в HTML, принимая форму-группу, чтобы рассмотреть все поля, когда все поля имеют какое-то значение, тогда включается единственная кнопка, но в случае описанной выше ситуации я застрял.

**This is my javascript code.
I m new in this plz help.**


function statecheck(){
    if (document.getElementById('state').checked = true) {
      document.getElementById('ifstate').style.display = 'block';
      document.getElementById('ifapmc').style.display = 'none';
      document.getElementById('ifapmc').disabled = true;
    }
  }

  function stateapmccheck(){
    if (document.getElementById('apmc').checked = true) {
      document.getElementById('ifapmc').style.display = 'block';
      document.getElementById('ifstate').style.display = 'none';
      document.getElementById('ifstate').disabled = true;
    }
  }

Это мой угловой код материала

    <div>
        <label>Registration Level: </label>&nbsp;
        <mat-radio-group aria-label="Select an option" 
    formControlName="choosereglevel" #reglevel>
              <mat-radio-button value="1" id="state" 
    onclick="javascript:statecheck();" color="primary">State</mat-radio 
 button>&nbsp;
              <mat-radio-button value="2" id="apmc" 
    onclick="javascript:stateapmccheck();" color="primary">APMC</mat-radio- 
   button>
              <!--<mat-error 
    *ngIf="firstFormGroup?.controls?.choosereglevel?.hasError('required')">
                  Please choose one <strong>level.</strong>
              </mat-error>-->
            </mat-radio-group>
          </div>
          <br>
          <!--hidden select box-->
          <div id="ifstate" style="display:none;">
          <mat-form-field>
            <mat-label>Registered With State: </mat-label>  
              <mat-select formControlName="choosestate" #selectstate>
                <mat-option *ngFor="let selectstate of registrationstate" 
    [value]="selectstate.value">
                  {{selectstate.viewValue}}
                  </mat-option>
                </mat-select>
            </mat-form-field>
          </div> 
            <!--second T&C select box-->
            <div id="ifapmc" style="display:none;">
              <mat-form-field>
              <mat-label>Registered With State: </mat-label>  
                <mat-select formControlName="choosestate" #selectstate>
                  <mat-option *ngFor="let selectstate of registrationstate" 
    [value]="selectstate.value">
                    {{selectstate.viewValue}}
                  </mat-option>
                </mat-select>
              </mat-form-field> 
              <mat-form-field>
                <mat-label>Registered With APMC: </mat-label>  
                <mat-select formControlName="chooseapmc" #selectapmc>
                  <mat-option *ngFor="let selectstate of 
registrationapmcstate" 
    [value]="selectstate.value">
                    {{selectstate.viewValue}}
                  </mat-option>
                </mat-select>
              </mat-form-field>
            </div>

1 Ответ

0 голосов
/ 24 июня 2019

Похоже, у вас есть синтаксическая ошибка внутри ваших if(...) операторов

Когда вы используете один знак =, он устанавливает свойство слева от него, чтобы соответствовать значению справа

Для сравнения нужен двойной ==

Так что попробуйте document.getElementById('state').checked == true и if document.getElementById('apmc').checked == true

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...