Совместимость с IE / jquery, динамическое заполнение поля выбора - PullRequest
1 голос
/ 09 февраля 2010

Не уверен, с чего начать ...

У меня есть функция, которая берет выбранный идентификатор поля ввода и заполняет его массивом опций.

function populateSelect(selectId, options){

    options = options.split(';');
    selectId.find('option').remove().end();

    $.each(options, function(i, option){
      option = option.split(':');
      selectId.append($('<option />').val(String(option[0].trim())).text(String(option[1].trim())));
    });
}

Пример вызова будет ...

selectId = $("#dateBar_graphSelect");
var options = 'Pie:Pie;Column:Column';
populateSelect(selectId, options);

Ошибка, которую я получаю в IE 8, ...

Объект не поддерживает это свойство или метод (строка selectId.append)

Учитывая, что в этой строке вызывается несколько методов, у меня НЕТ ИДЕИ, что здесь может происходить.

Даже совет о том, как отладить подобные ситуации, принесет мне пользу!

- заранее благодарю за помощь

1 Ответ

0 голосов
/ 09 февраля 2010

Сценарий прерывается на option[0].trim()

Это работает ...

function populateSelect(selectId, options){

    options = options.split(';');
    selectId.find('option').remove().end();

    $.each(options, function(i, option){
      option = option.split(':');

     selectId.append($('<option>')
            .val(String(option[0])) //NOTE - no trim
            .text(String(option[1])));
    });
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...