Bagaimanakah saya boleh menukar senarai tidak tertib kepada lungsur pilih menggunakan jQuery?

DDD
Lepaskan: 2024-11-11 13:42:02
asal
498 orang telah melayarinya

How can I convert an unordered list to a select dropdown using jQuery?

Menukar Senarai Tidak Tertib kepada Pilih Jatuh Turun dengan jQuery

Anda mempunyai senarai tidak tertib (UL) yang diformatkan seperti berikut:

<ul class="selectdropdown">
    <li><a href="one.html" target="_blank">one</a></li>
    <li><a href="two.html" target="_blank">two</a></li>
    <li><a href="three.html" target="_blank">three</a></li>
    <li><a href="four.html" target="_blank">four</a></li>
    <li><a href="five.html" target="_blank">five</a></li>
    <li><a href="six.html" target="_blank">six</a></li>
    <li><a href="seven.html" target="_blank">seven</a></li>
</ul>
Salin selepas log masuk

Matlamat anda adalah untuk menukarnya menjadi menu lungsur () dengan format berikut:

<select>
    <option value="one.html" target="_blank">one</option>
    <option value="two.html" target="_blank">two</option>
    <option value="three.html" target="_blank">three</option>
    <option value="four.html" target="_blank">four</option>
    <option value="five.html" target="_blank">five</option>
    <option value="six.html" target="_blank">six</option>
    <option value="seven.html" target="_blank">seven</option>
</select>
Salin selepas log masuk

Penyelesaian jQuery:

Untuk mencapai matlamat ini penukaran, anda boleh menggunakan kod jQuery berikut:

$(function() {
    $('ul.selectdropdown').each(function() {
        var $select = $('<select>');

        $(this).find('a').each(function() {
            var $option = $('<option>');
            $option.attr('value', $(this).attr('href')).html($(this).html());
            $select.append($option);
        });

        $(this).replaceWith($select);
    });
});
Salin selepas log masuk

Penjelasan:

  • Kod membungkus penukaran dalam $(function() { . .. }); blok untuk memastikan ia berjalan sebaik sahaja halaman dimuatkan.
  • Ia melelang ke atas semua elemen UL dengan kelas "select dropdown."
  • Untuk setiap UL, ia mencipta