Подстановка id в getElementById

Старый mweb

Модератор: [mweb team]

Подстановка id в getElementById

Сообщение WereWolf Пт окт 02, 2009 13:32

Всем доброго дня.
Столкнулся с такой проблемой.

Код: Выделить всё
function updatePageDeletePhoto() {
    if (request.readyState == 4) {
    alert(request.responseText);
     var newTotal = request.responseText.split("|");
     if (newTotal[0] == "1") {
      alert(newTotal[1]);
      var remove_obj=document.getElementById(newTotal[1]);
      document.getElementById("thumbnails").removeChild(remove_obj);     
     }
   }
  }


в responseText, а далее в newTotal[1] Получаю id DIV-а который надо уничтожить.
Что сюда передать чтобы он этот див нашёл var remove_obj=document.getElementById(newTotal[1]);?
если руками пишу remove_obj=document.getElementById("p231"); то всё ок.
если же пытаюсь подставить через переменную - то не находит. Пробовал и с кавычками и без. в alert отслеживаю что передаю правильное имя id - а оно всё равно никак.

Может у кого есть мысли на этот счёт,
буду очень признателен.
Легче кивнуть головой в знак согласия, чем объяснять, почему ты не согласен.
Аватара пользователя
WereWolf
Редко заходит
 
Сообщения: 134
Зарегистрирован: Вт июл 18, 2006 23:37
Откуда: Рига

Re: Подстановка id в getElementById

Сообщение WereWolf Пт окт 02, 2009 14:09

Проблему я нашёл. Оказалось очень интересно - во всяком случае для меня.

Замерил длину получаемой строки - она оказалось длиннее чем надо.
Строка возращается из php через echo.

echo '1|p'.$ind; где $ind это переменная содержащая целое число.

Убил лишние пробелы и всё пошло, а вот откуда они взялись?
Легче кивнуть головой в знак согласия, чем объяснять, почему ты не согласен.
Аватара пользователя
WereWolf
Редко заходит
 
Сообщения: 134
Зарегистрирован: Вт июл 18, 2006 23:37
Откуда: Рига

Re: Подстановка id в getElementById

Сообщение Muerto Пт окт 02, 2009 14:23

echo '1|p'.trim($ind)
Но вот откуда эти пробелы - вопрос интересный. Без всего кода сказать сложно. Возможно это BOM.
Nadie hablara de nosotras cuando hayamos muerto.
www.muerto.ru
Аватара пользователя
Muerto
Растаман
 
Сообщения: 3597
Зарегистрирован: Пн окт 11, 2004 19:09
Откуда: Москва

Re: Подстановка id в getElementById

Сообщение WereWolf Пт окт 02, 2009 15:21

Muerto писал(а):echo '1|p'.trim($ind)
Но вот откуда эти пробелы - вопрос интересный. Без всего кода сказать сложно. Возможно это BOM.


Так весь код и есть.

в ехо - выдаю параметры, а в request.responseText получаю.
Если в php выставляю trim то не помогает. Там же число, что там тримить.
Легче кивнуть головой в знак согласия, чем объяснять, почему ты не согласен.
Аватара пользователя
WereWolf
Редко заходит
 
Сообщения: 134
Зарегистрирован: Вт июл 18, 2006 23:37
Откуда: Рига

Re: Подстановка id в getElementById

Сообщение Muerto Пт окт 02, 2009 15:50

WereWolf
Пробелы где организуются? И пробелы ли это, а не переводы строки?
Nadie hablara de nosotras cuando hayamos muerto.
www.muerto.ru
Аватара пользователя
Muerto
Растаман
 
Сообщения: 3597
Зарегистрирован: Пн окт 11, 2004 19:09
Откуда: Москва

Re: Подстановка id в getElementById

Сообщение WereWolf Пт окт 02, 2009 16:21

Мысль - проверил

посылаю через echo '1|p'.$ind, где $ind=269

получаю
p269%20%20%0D%0A

20 - если не ошибаюсь пробел. Значит 2 пробела и переход строки с переносом каретки.
Странно...
Легче кивнуть головой в знак согласия, чем объяснять, почему ты не согласен.
Аватара пользователя
WereWolf
Редко заходит
 
Сообщения: 134
Зарегистрирован: Вт июл 18, 2006 23:37
Откуда: Рига

Re: Подстановка id в getElementById

Сообщение Muerto Пт окт 02, 2009 16:28

<script type="text/javascript" charset="utf-8"> не пробовал ставить?
Nadie hablara de nosotras cuando hayamos muerto.
www.muerto.ru
Аватара пользователя
Muerto
Растаман
 
Сообщения: 3597
Зарегистрирован: Пн окт 11, 2004 19:09
Откуда: Москва

Re: Подстановка id в getElementById

Сообщение WereWolf Пт окт 02, 2009 18:32

Muerto писал(а):<script type="text/javascript" charset="utf-8"> не пробовал ставить?

не помогает.

а почему оно должно изменить что-то?
у меня же не с кодировкой проблема, а с добавлением всякой хрени
Легче кивнуть головой в знак согласия, чем объяснять, почему ты не согласен.
Аватара пользователя
WereWolf
Редко заходит
 
Сообщения: 134
Зарегистрирован: Вт июл 18, 2006 23:37
Откуда: Рига

Re: Подстановка id в getElementById

Сообщение Muerto Вт окт 06, 2009 12:07

request.responseText в принципе может всякую ересь от себя добавить. Обработай его на запрещенные символы регекспом. Типа (p[0-9]+) $1 - твой ID.
Nadie hablara de nosotras cuando hayamos muerto.
www.muerto.ru
Аватара пользователя
Muerto
Растаман
 
Сообщения: 3597
Зарегистрирован: Пн окт 11, 2004 19:09
Откуда: Москва

Re: Подстановка id в getElementById

Сообщение WereWolf Вт окт 06, 2009 14:44

сенкс. Так и сделал.
Легче кивнуть головой в знак согласия, чем объяснять, почему ты не согласен.
Аватара пользователя
WereWolf
Редко заходит
 
Сообщения: 134
Зарегистрирован: Вт июл 18, 2006 23:37
Откуда: Рига


Вернуться в Архив

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 2

cron