ФорумПрограммированиеJavaScript → Генерация select

Генерация select

  • Argnist

    Сообщения: 130 Репутация: N Группа: Кто попало

    Spritz 27 июля 2009 г. 10:44

    Ух давно тут не был) Проблема такая:

    С помощью jQuery подгружаю данные, которые записываются в select
    $.each(data, function(index, card)
    {
               var option = new Option(card.name, card.id);
               select.append(option);
            });


    Строк там много и пока все не подгрузится браузер повисает, ничего нельзя сделать. Как решить проблему, чтобы браузер не вис и данные подгружались в фоне?
  • phpdude

    Сообщения: 26646 Репутация: N Группа: в ухо

    Spritz 27 июля 2009 г. 11:37, спустя 53 минуты 12 секунд


    Ух давно тут не был) Проблема такая:

    С помощью jQuery подгружаю данные, которые записываются в select
    $.each(data, function(index, card)
    {
               var option = new Option(card.name, card.id);
               select.append(option);
            });


    Строк там много и пока все не подгрузится браузер повисает, ничего нельзя сделать. Как решить проблему, чтобы браузер не вис и данные подгружались в фоне?
    сгенери хтмл строчку для опшном да добавть в один аппенд
    Сапожник без сапог
  • Argnist

    Сообщения: 130 Репутация: N Группа: Кто попало

    Spritz 27 июля 2009 г. 12:34, спустя 57 минут

    $.each(data, function(index, card)
    {
    options += "<option value=" + card.id + ">" + card.name + "</option>";

    });
    select.append(options);


    точно так же висит(
  • phpdude

    Сообщения: 26646 Репутация: N Группа: в ухо

    Spritz 27 июля 2009 г. 12:44, спустя 9 минут 58 секунд

    Argnist, у тебя там сколько элементов то?)
    Сапожник без сапог
  • Argnist

    Сообщения: 130 Репутация: N Группа: Кто попало

    Spritz 27 июля 2009 г. 12:55, спустя 10 минут 53 секунды

    пару тысяч
  • krasun

    Сообщения: 1370 Репутация: N Группа: Джедаи

    Spritz 27 июля 2009 г. 15:05, спустя 2 часа 10 минут

    я на чистом жс, покажу как, могу быть ошибки пишу с ходу


    var select = document.createElement('select');

    for(…; …; …;) {
    var option = document.createElement('option');
    option.value = '';
    option.innerHTML = '';
    select.appendChild(option);
    }

    someElement.appendChild(select);
    Спустя 28 сек.
    попробуй, может поможет
    Спустя 46 сек.
    хотя select на

    пару тысяч


    лучше в js уже не генерить

Пожалуйста, авторизуйтесь, чтобы написать комментарий!