Angular - Check if all options are selected to enable button

前端 未结 3 380
礼貌的吻别
礼貌的吻别 2020-12-22 05:32

This is a quiz app, in this scenario my next button will redirect to another page and it\'s disabled by default. If I choose all the options it shou

相关标签:
3条回答
  • 2020-12-22 06:08

    The answers will work, but you can make it the Angular way shown here:

    https://angular.io/guide/forms-overview

    There are 2 ways: template-driven or reactive forms

    Then you can bind disabled property to the form valid property.

    Choose what’s suits best to your needs. Hope it will be helpful.

    0 讨论(0)
  • 2020-12-22 06:19

    you can use Object.keys for that, like this

    App.component.html

    <button class="btn-next" [disabled]="isDisabled()">
        Next
      </button>
    

    app.component.ts

    isDisabled(): boolean {
      return Object.keys(this.answerEvaluation).length !== Object.keys(this.practiceQuizData).length;
    }
    
    0 讨论(0)
  • 2020-12-22 06:21

    My take on this is to define the buttonDisabled as a getter and then evaluate for each question if it's status allows for the navigation to the next page...

    In my implementation the user has to select all of the answers of the type-2-questions, but only one answer on the type-1-questions. If this is not what you want please state so in the comments, it's just what appeared logical to me. I hope it helps you already.

    Any questions? Just ask.

    Here's my stackblitz

    0 讨论(0)
提交回复
热议问题