Javascript Select Box atualizar necessário YUI 3, ao selecionar nenhum?
Pergunta
Eu estou usando YUI 3 para deixar alguém clique em "Select All" ou "Select None" e depois ter a selectbox selecionar todos os itens ou desmarque todos eles, respectivamente. Aqui está o meu código:
// This selects all
Y.on('click',function (e) {
selectBoxNode.get("options").each(function () {
this.removeAttribute('selected');
this.setAttribute('selected','selected');
});
}, selectAllNode
);
// This selects none
Y.on('click',function (e) {
selectBoxNode.get("options").each(function () {
this.setAttribute('selected','false');
this.removeAttribute('selected');
});
selectBoxNode.('selectedIndex',-1);
}, selectNoneNode
);
selectAllLink, selectNoneLink e selectBoxNode são auto-evidentes, devidamente devolvidos Nodes. Update:. Obras selectAll, eu tinha que remover manualmente o atributo 'selecionada' para cada um e re add-lo
O selectNoneLink não funciona:? Ele unselects apenas os elementos que não foram antes selecionados ... embora mostras de inspeção DOM que o atributo selectedIndex é realmente mudado para -1, talvez por isso, necessita de uma actualização
Qualquer ajuda seria apreciada. Se isso acontece em todos os frameworks, que seria bom saber também.
Obrigado!
Solução
Isso funcionou para mim.
YUI().use('node', function(Y) {
Y.get('#unsel').on('click', function(e) {
Y.get('select').get('options').set('selected',false);
});
Y.get('#sel').on('click', function(e) {
Y.get('select').get('options').set('selected', true );
});
});