Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

HTML+CSS+JavaScript

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: var.split(" "); не работает в ИЕ?!

Сообщения:  [1-10]   [11-14] 

 
 автор: PAT   (27.02.2009 в 17:58)   письмо автору
 
   для: amigo63   (27.02.2009 в 17:20)
 

ТАКОГО быть НЕ МОЖЕТ.
Что-то вы ещё явно изменили, но то ли не заметили, то ли скромничаете :-)

  Ответить  
 
 автор: amigo63   (27.02.2009 в 17:20)   письмо автору
 
   для: PAT   (27.02.2009 в 16:41)
 

var message=request.responseText.split("|::|::|");
вот так заработало... Странно, не думал, что будущему массиву нужно сообщать тип var...

  Ответить  
 
 автор: amigo63   (27.02.2009 в 16:49)   письмо автору
 
   для: amigo63   (27.02.2009 в 15:25)
 

Временно прокатило (((

  Ответить  
 
 автор: amigo63   (27.02.2009 в 16:49)   письмо автору
 
   для: PAT   (27.02.2009 в 16:41)
 

alert (request.responseText);
выводит:
0|::|::|3
Ошибка естественно после этого никуда не делась(.

  Ответить  
 
 автор: PAT   (27.02.2009 в 16:41)   письмо автору
 
   для: amigo63   (27.02.2009 в 16:34)
 

Метод eval вообще здесь не нужен - он как корове седло.

Вы лучше расскажите - когда у вас в коде прописан тестовый alert, то ошибку пишет? Или не пишет?

  Ответить  
 
 автор: amigo63   (27.02.2009 в 16:34)   письмо автору
 
   для: PAT   (27.02.2009 в 15:55)
 

Снова не работает. Не понимаю. document.getElementById('message').innerHTML= request.responseText; выводит 0|::|::|3, далее

        var aaa=eval(request.responseText);
        message=aaa.split("|::|::|");

вторая строка снова вызывает ошибки.

  Ответить  
 
 автор: PAT   (27.02.2009 в 15:55)   письмо автору
 
   для: amigo63   (27.02.2009 в 15:44)
 

Ну и что у вас получалось?

Если request.responseText является тем самым ответом сервера, который вам и нужен, и отражается в alert'e хоть какими-то символами - то, значится, он является переменной типа String и, следовательно, следующая строка НЕ МОЖЕТ выдавать ошибки.


Похожая ошибка однажды была у меня, когда я тестировал ajax-скрипт на локальном компьютере и случайно прописал не абсолютный, а относительный адрес php-скрипта, который также находился на локальном диске моего компьютера. Соответственно, в alert'e я увидел не планируемый мною ответ сервера, а код своего php-скрипта, в котором было, разумеется, много двойных и одинарных кавычек безо всяких экранирующих слешей и парсер браузера, естественно, написал то же самое, что и вам.
Может быть, в ответе сервера у вас также есть неэкранированные кавычки?

  Ответить  
 
 автор: amigo63   (27.02.2009 в 15:44)   письмо автору
 
   для: PAT   (27.02.2009 в 15:40)
 

Так и делал :))

  Ответить  
 
 автор: PAT   (27.02.2009 в 15:40)   письмо автору
 
   для: amigo63   (27.02.2009 в 15:21)
 

А вы всё же добавьте строчку и посмотрите на request.responseText до ошибки:
alert (request.responseText);
message=request.responseText.split("|::|::|");

  Ответить  
 
 автор: amigo63   (27.02.2009 в 15:25)   письмо автору
 
   для: Lelik   (27.02.2009 в 14:49)
 

Большое спасибо! var aaa=eval(request.responseText); прокатило)!

  Ответить  

Сообщения:  [1-10]   [11-14] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования