Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > JavaScript: Общие вопросы > Проблема с innerHTML и пробелами


Автор: ArsNov 26.2.2009, 16:18
Помогите плиз разобраться с задачей.
text содержит русский текст с пробелами. переменная генерируется через php (данные грузятся из бд)

Часть кода
Код

var hre = document.createElement('a');
hre.innerHTML = text;


Столкнулся с проблемой, при выполнении hre.innerHTML = text;
в hre.innerHTML вместо пробелов пишется &nbsp. Как это исправить, с чем это связано?

С некоторыми данными из бд это проблема проявляется, с некоторыми нет. 

Спасибо

Автор: bars80080 26.2.2009, 20:49
Цитата(ArsNov @  26.2.2009,  15:18 Найти цитируемый пост)
С некоторыми данными из бд это проблема проявляется, с некоторыми нет. 

наверно, тогда надо разбираться, что за данные лежат в БД. скрипт не может делать: сейчас хочу так, а потом хочу по-другому. если результат разный, значит, есть причина

Автор: Onis 26.2.2009, 22:41
Посмотрите в fireBug, по запросам, какие данные уже к Вам приходят от сервера.

Автор: smartov 26.2.2009, 22:58
ArsNov, и браузер укажите пожалуйста

Автор: ArsNov 27.2.2009, 11:26
Работаю с internet explorer 6. Отладчик использовал.
Да, данные из бд виноваты. Если точнее, то ситуация такая: 
Делался  экспорт базы в excel файл с помощью ems sql manager foк mysql. Причем выгрузка в формат excel 2007.
В дальнейшем при восстановлении данных из этого файла, в js повяляются эти nbsp. Причем через отладчик(microsoft script editor) nbsp не видно, они появляются только при записи в innerHTML. В базе данных nbsp тоже отсутствует.
Если те же действия производить в excel 2003, то nbsp не появляются и при записи в innerHTML не nbsp, а просто пробелы.
Через отладчик не видно разницы.
В чем фишка?

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)