I have two selects:
<div class="select">
<select [class.disabled]="loadingcadastro" (change)="getIdTipoVariacao(item.value.tipo, i)" formControlName="tipo" class="select-text">
<option class="dropdown-item" selected>{{item.value.tipo || 'Tipo da Variação'}}</option>
<option [hidden]="item.value.tipo == tipoVariacao.valor" *ngFor="let tipoVariacao of tiposvariacoes;let j = index"
class="dropdown-item">{{tipoVariacao.valor}}</option>
</select>
<span class="select-highlight"></span>
<span class="select-bar"></span>
</div>
<div class="select">
<select formControlName="valor_atributo" class="select-text">
<option class="dropdown-item" selected>{{item.value.valor || 'Valor'}}</option>
<option *ngFor="let ValorAtributo of listaAtributos;let x = index"
class="dropdown-item">{{ValorAtributo.valor}}</option>
</select>
<span class="select-highlight"></span>
<span class="select-bar"></span>
</div>
Depending on the choice of the first select, the name of that variation and the index is sent to the function getIdTipoVariacao. Through this data I can send to my backend the id of the first option selected so that it returns the data of the second select.
The problem happens that if I have two selects on the screen, when I change the first select, the other subsequent selects are given the value "Value". In case only the first select should receive value "Value":
Follow my ts:
getIdTipoVariacao(variacao:string, index: number) { // pega o id de um determinado tipo de variação para mandar para a função get-lista-valor-atributo para obter a lista de atributos daquela variação
for(let i=0;i<this.tiposvariacoes.length;i++){
if(this.tiposvariacoes[i].valor == variacao){
this.idTipoVariacao = this.tiposvariacoes[i].id
}
}
//Tendo o id selecionado, já pode copular a próxima combobox de valores:
this.listaValoresAtributo(this.idTipoVariacao);
//Condição criada pois ao selecionar um Tipo de Variação, selecionar um atributo e depois trocar o tipo de variação, o atributo selecionado continuava na lista de tipo de variações.
//Agora quando já existe um atributo selecionado e é trocado para outro tipo de variação que não contempla aquele atributo, é voltado para o valor padrão.
if(this.variacaoForm.value.variacoes[index].valor != null){
this.variacaoForm.value.variacoes[index].valor = null;
}
Iwouldlikewhenchangingthefirstselectoption,changetothedefaultoption"Value", but only the first sellect.
Could anyone help me?