Desabilitando opções de um select

Front-end

28/08/2017

Fala galera, tudo bem?
Tenho esse select:

<select name="nomes">
  <option value="1">Adriano</option>
  <option value="2">Monica</option>
  <option value="3">Caio</option>
</select>


Como eu faço para desabilitar as outras opções quando eu selecionar uma delas?

Por exemplo, seleciono Adriano e as outras opções (Monica e Caio) devem ficar desabilitadas.

Como conseguiria fazer isso? Tenho que usar $(:enable) e depois passar para disabled?

Grato pela ajuda ;)
Adriano Costa

Adriano Costa

Curtidas 0

Respostas

Gladstone Matos

Gladstone Matos

28/08/2017

bom dia Adriano td bom?

Cara, não consegui entender exatamente a ideia... Como assim os demais itens ficariam desabilitados? E se o usuario errar e quiser alterar e tal, a ideia eh nao ser possivel?

Poderia enviar mais detalhes please? ;)
grande abraco
GOSTEI 0
Adriano Costa

Adriano Costa

28/08/2017

Bom dia Gladstone, o caso é justamente isso, ele não poder alterar, somente quem tem nivel de acesso. Mas eu acabei de conseguir fazer isso, desta forma:

if($('#nomes').val() == '1'){
$('#nomes option').not(':selected').prop('disabled', true);
}

ou se preferir esconder as opções para que o usuário nem saiba das outras pode fazer assim:

if($('#nomes').val() == 1){
$('#nomes option').not(':selected').css('display', 'none');
}

O exemplo que usei é simples, porém, serve para várias aplicações, por exemplo, o usuário selecionou uma opção em uma página e foi direcionada para outra página com o preenchimento das informações referentes a esta, se ele não for usuário admin, não poderá trocar o item. Obrigado por se manifestar. Tmj.
GOSTEI 0
POSTAR