JSFiddle - React, Tailwind, and code Playground
HTML
Lista das
<select id="maisAtivas" onchange="muda()">
<option>1</option>
<option>2</option>
<option>3</option>
<option>4</option>
<option>5</option>
</select>
palavras mais ativas.
<br><br>
<!-- Select semelhante ao seu com name='vet[]' que vem preenchido pelo java -->
<select id="disponiveis" multiple="true">
<option>de - 5</option>
<option>voce - 3</option>
<option>que - 3</option>
<option>isso - 2</option>
<option>outra - 2</option>
</select>
JavaScript
var lista = [];
pegaLista();
function pegaLista() {
var disponiveis = document.getElementById("disponiveis");
for (i=0; i < disponiveis.options.length; i++) {
lista.push(disponiveis.options[i].text);
}
limpaLista(disponiveis);
}
function muda() {
var maisAtivas = document.getElementById("maisAtivas");
var selecionado = maisAtivas.options[maisAtivas.selectedIndex].text;
var disponiveis = document.getElementById("disponiveis");
limpaLista(disponiveis);
for (var i=0; i < selecionado; i++) {
var option = document.createElement("option");
option.text = lista[i];
disponiveis.add(option);
}
}
function limpaLista(elemento) {
while(elemento.options.length > 0) {
elemento.remove(0);
}
}