Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

349
Visualizações
¿Cómo puedo ordenar las opciones según mp4 webm, etc.?

Quiero ordenar las opciones de mp4 juntas como si no debería haber una opción de webm cuando, a menos que no quede otra opción de mp4, podemos poner la opción de webm

 <select id="download-options"> <option value="18">mp4 - 360p</option> <option value="247">webm - 720p (no audio)</option> <option value="398">mp4 - 720p (no audio)</option> <option value="136">mp4 - 720p (no audio)</option> <option value="135">mp4 - 480p (no audio)</option> <option value="244">webm - 480p (no audio)</option> <option value="397">mp4 - 480p (no audio)</option> </select>

Como puede ver, hay mp4 y webm mezclados, por lo que debe ordenar, pero ¿cómo? también debemos asegurarnos de no dar un valor de opción a otra opción

Quiero algo como esto

 <select id="download-options"> <option value="18">mp4 - 360p</option> <option value="398">mp4 - 720p (no audio)</option> <option value="136">mp4 - 720p (no audio)</option> <option value="135">mp4 - 480p (no audio)</option> <option value="397">mp4 - 480p (no audio)</option> <option value="247">webm - 720p (no audio)</option> <option value="244">webm - 480p (no audio)</option> </select>
about 4 years ago · Juan Pablo Isaza
2 Respostas
Responde à pergunta

0

esta es una solución que puedo pensar ahora

 function sort(el){ var orderedArr = [...el.children].sort((a,b)=>{ return a.innerText.substr(0,3) == "mp4" ? -1:1 }) el.innerHTML = "" orderedArr.forEach(each=>{ el.appendChild(each) }) } sort(document.querySelector("select"))
 <select id="download-options"> <option value="18">mp4 - 360p</option> <option value="247">webm - 720p (no audio)</option> <option value="398">mp4 - 720p (no audio)</option> <option value="136">mp4 - 720p (no audio)</option> <option value="135">mp4 - 480p (no audio)</option> <option value="244">webm - 480p (no audio)</option> <option value="397">mp4 - 480p (no audio)</option> </select>

about 4 years ago · Juan Pablo Isaza Relatório

0

 function sortItems(item) { var options = item.options; Array.prototype.sort.call(options, function (x, y) { var xText = x.text.toLowerCase(); var yText = y.text.toLowerCase(); if (xText < yText) { return -1; } else if (xText > yText) { return 1; } else { return 0; } }); } sortItems(document.getElementById('download-options'));
 console.clear() <select id="download-options" multiple="multiple"> <option value="18">mp4 - 360p</option> <option value="247">webm - 720p (no audio)</option> <option value="398">mp4 - 720p (no audio)</option> <option value="136">mp4 - 720p (no audio)</option> <option value="135">mp4 - 480p (no audio)</option> <option value="244">webm - 480p (no audio)</option> <option value="397">mp4 - 480p (no audio)</option> </select>

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda