Estou tendo problemas para descobrir isso. Tenho duas caixas de seleção (no futuro, terei mais):
checkSurfaceEnvironment-1
checkSurfaceEnvironment-2
Basicamente, quero escrever uma instrução if e testar se uma delas está marcada e outra NÃO. Qual é a maneira mais fácil de fazer o seguinte:
if ( $("#checkSurfaceEnvironment-1").attr('checked', true) &&
$("#checkSurfaceEnvironment-2").is('**(NOT??)** :checked') ) {
// do something
}
jquery
if-statement
user1040259
fonte
fonte
||
não&&
para verificar se alguma das opções está marcada.&&
verifica se ambos estão marcados.Respostas:
Uma maneira confiável que uso é:
Se você quiser iterar sobre os elementos marcados use o elemento pai
Mais informações:
Isso funciona bem porque todas as caixas de seleção têm uma propriedade marcada que armazena o estado real da caixa de seleção. Se desejar, você pode inspecionar a página e tentar marcar e desmarcar uma caixa de seleção, e você notará que o atributo "marcado" (se presente) permanecerá o mesmo. Este atributo representa apenas o estado inicial da caixa de seleção, e não o estado atual . O estado atual é armazenado na propriedade marcada do elemento dom para essa caixa de seleção.
Veja Propriedades e Atributos em HTML
fonte
checked = true
fonte
Você também pode usar o
.not()
método ou:not()
seletor jQuery :Exemplo JSFiddle
Notas Adicionais
Na documentação da API jQuery para o
:not()
seletor :fonte
Uma forma alternativa:
Aqui está um exemplo prático e aqui está o código, você também deve usar prop.
Eu comentei a maneira de alternar o atributo marcado.
fonte
fonte
Eu estava procurando uma implementação mais direta, como o avijendr sugeriu.
Tive um pequeno problema com a sintaxe dele, mas fiz isso funcionar:
No meu caso, eu tinha uma mesa com uma classe
user-forms
, e eu estava verificando se qualquer uma das caixas que tiveram a cordacheckPrint
em seuid
eram desmarcada.fonte
Acho que a maneira mais fácil (com jQuery) de verificar se a caixa de seleção está marcada ou NÃO é:
se 'marcado':
se NÃO 'marcado':
fonte
Aqui eu tenho um trecho para esta pergunta.
fonte
Para fazer
.attr()
como você fez, para ver se está checado seria.attr("checked", "checked")
, e se não estiver seria.attr("checked") == undefined
fonte
Retorna verdadeiro se todas as checbox são verificadas em um div
fonte
Simples e fácil de verificar ou condição não verificada
fonte
tente este
No código Acima, selecione o elemento por Id e, em
(#checkSurfaceEnvironment-1)
seguida, filtre seu estado verificado por(:checked)
filtro.Ele retornará a matriz do objeto de elemento verificado. Se houver algum objeto na matriz, a condição será satisfeita.
fonte
Existem duas maneiras de verificar a condição.
OU você pode usar este também
Espero que seja útil para você.
fonte
Aqui está a maneira mais simples fornecida
fonte
Eu usei isso e funcionou para mim!
fonte
Eu sei que isso já foi respondido, mas ainda assim, esta é uma boa maneira de fazer isso:
fonte
fonte
fonte