Показать сообщение отдельно
  #1 (permalink)  
Старый 29.09.2013, 03:20
Новичок на форуме
Отправить личное сообщение для Cruperman Посмотреть профиль Найти все сообщения от Cruperman
 
Регистрация: 23.09.2013
Сообщений: 6

innerHTML - проблемы
Доброго времени суток!
Возникла такая неприятная ситуация. Даже две...
Начну с менее непонятной.
Есть такой код:
var string, string1, string2, string3, result; // par1, p1i - объявлялись ранее.
	string = document.getElementById(par1).innerHTML; 
	string1 = document.getElementById(par1).innerHTML.substring(0,p1i);
	string2 = '<spec>';
	string3 = document.getElementById(par1).innerHTML.substring(p1i);
	result = string1 + string2 + string3;
	document.getElementById(par1).innerHTML = result; // Переприсваиваем параграф начала

Так подробно расписывал для себя, чтобы понять в чем проблема. Но как-то неудачно...
Так вот, когда result присваивается document.getElementById(par1).innerHTML, непонятно откуда в конце document.getElementById(par1).innerHTML появляется закрывающий тег </spec>.

Это первая проблема. Теперь вторая.
Так же есть код. Следует сразу после предыдущего:
string = document.getElementById(par2).innerHTML;
	string1 = document.getElementById(par2).innerHTML.substring(0,p2i);
	string2 = '</spec>';
	string3 = document.getElementById(par2).innerHTML.substring(p2i);
	result = string1 + string2 + string3;
	document.getElementById(par2).innerHTML = result; // Переприсваиваем параграф конца

Здесь вообще непонятная ситуация. Когда result присваивается document.getElementById(par1).innerHTML, </spec> куда-то пропадает. Т.е. в result он был, а document.getElementById(par1).innerHTML его нет...
Либо я с ума сошел, либо innerHTML во всем виноват.
Тогда как по другому?

Заранее спасибо.
Ответить с цитированием