Полезная информация

Юристы зарабатывают огромные деньги и славу, оперируя хорошим знанием законов. Правила форума — простой путь к успешному общению.

№121-08-2006 00:37:46

Masletso
Участник
 
Группа: Members
Зарегистрирован: 31-07-2006
Сообщений: 94

Почистить листбокс. (помогите пожалуйста)

Я у же :dumb: 3 часа =) надо бы :zzz:, но всё же спрошу:
мне нужно почистить listbox.
Заметил о-о-чень странное дело.
К примеру в листбоксе есть 4 листитема.
Пишем так:

Выделить код

Код:

alert("0");
supportListbox.removeItemAt(0);

Он выводит 0, и удаляет первый элемент.
Проделываю так со всеми четырьмя элементами (0-3) ПО ОТДЕЛЬНОСТИ!
Удаляет! всё ок, по отдельности удаляет!
Теперь пишу их вместе:

Выделить код

Код:

alert("0");
supportListbox.removeItemAt(0);
alert("1");
supportListbox.removeItemAt(1);
alert("2");
supportListbox.removeItemAt(2);
alert("3");
supportListbox.removeItemAt(3);

И!! на 2 он зависает, он алертит 2 и всё, зависает.
Консоль ругается на вот такую ошибку:

Ошибка: uncaught exception: [Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsIListBoxObject.getItemAtIndex]"  nsresult: "0x80004005 (NS_ERROR_FAILURE)"  location: "JS frame :: chrome://global/content/bindings/listbox.xml :: getItemAtIndex :: line 481"  data: no]

Ну о цикле я уже не говорю, это я щас привёл тестовый вариант, вообще я не буду знать скоко элементов в листе и удаляет он конечно их циклом, но вот я сначала сделал цикл, он не работал...и стал рыть и вот до чего дорыл в итоге =(

Что это за проблема? или это баг?
Помогите пожалуйста!

Добавлено Пнд 21 Авг 2006 00:47:40 :
я тут посмотрел - он удаляет через один!!! а почему?? =)

Отсутствует

 

№221-08-2006 01:06:38

Merlyel
псЫх
 
Группа: Extensions
Откуда: Уфа
Зарегистрирован: 20-12-2005
Сообщений: 2415

Re: Почистить листбокс. (помогите пожалуйста)

Может все дело в том, что когда ты удалил 0ой элемент, элемент под номером 1 стал номер 0 опять.... и в итоге пошла чехарда :) Т.е. попробуй удалять элементы не с начала, а с конца. Или второй вариант - удаляй все время 0ой элемент, пока они не кончатся.


жЫзнь рандомна... и ничего с этим не поделаешь ;)

Отсутствует

 

№321-08-2006 01:14:16

Masletso
Участник
 
Группа: Members
Зарегистрирован: 31-07-2006
Сообщений: 94

Re: Почистить листбокс. (помогите пожалуйста)

гыы =)
попробую =)

Добавлено Пнд 21 Авг 2006 01:15:37 :
ДАААААА!!!!!!!!!!!!!!
спасибо!
блин, точно, не подумал об этом... Хотя я раньше и делал что-то подобное (но с html элементами) но с этой проблемой не сталкивался.
Держи ПЛюсЪ!

Добавлено Пнд 21 Авг 2006 01:25:49 :
я просто всегда когда делал что-то подобное, то удалял по id к примеру, давал элементам id с цифрой в себе при создании, и удалял циклом по id =)
я вообще редко пользовался while и, если честно не очень понимал для чего он нужен если есть for =)
а вот как раз тут нужен while =)

Отсутствует

 

Board footer

Powered by PunBB
Modified by Mozilla Russia
Copyright © 2004–2020 Mozilla Russia GitHub mark
Язык отображения форума: [Русский] [English]