Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 04.04.2012, 20:55   #1
sandak
Пользователь
 
Регистрация: 11.12.2011
Сообщений: 11
По умолчанию Работа с элементами страницы (JavaScript)

Цитата:
Создайте Web-страницу, в которой определяются и, с помощью метода alert, выводится список всех значений атрибута id в элементах страницы, содержащих текстовые узлы, а затем с помощью метода prompt для заданных идентификаторов задается новое содержимое текстового узла (признаком окончания изменения идентификаторов является ввод пустой строки).
По заданию, выходит, что надо изменить содержимое, которое находится между тегами <p> ... </p>.

Хоть убей, не пойму как. Гуглил, толком ничего не нашел. Примеры с .innerHTML попросту не работают, а пользоватся jQuery не разрешают.

Подскажите, пожалуста как это сделать. Ну хоть на мысль натолкните
sandak вне форума Ответить с цитированием
Старый 05.04.2012, 22:55   #2
sandak
Пользователь
 
Регистрация: 11.12.2011
Сообщений: 11
По умолчанию

Вот накидал чуток, но с циклом проблемы

Код:
<html>
<head>

<script>
function Change() {
var tagP=document.getElementsByTagName("p");
var ln=tagP.length;
var i;

for (i=0; i<ln; i++) {
if (tagP[i].id!="") {
var new_text=prompt('Введите текст для элемента с id "'+tagP[i].id+'" :', "");
tagP[i].outerText=new_text;
}
}


}
</script>

</head>
<body>
<h2><p id="first">
Вариант 11-01
</p></h2>
<p id="second">
Создайте Web-страницу, в которой определяются и, с помощью метода alert, выводится список 
всех значений атрибута id в элементах страницы, содержащих текстовые узлы, а затем с помощью
 метода prompt для заданных идентификаторов задается новое содержимое текстового узла 
(признаком окончания изменения идентификаторов является ввод пустой строки). 
</p>


<a href=# onClick="Change();">Запустить скрипт</a>
</body>
</html>

Последний раз редактировалось sandak; 05.04.2012 в 23:02.
sandak вне форума Ответить с цитированием
Старый 05.04.2012, 23:23   #3
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,291
По умолчанию

Очень интересно (слежу за вашей темой, но знаний в этой области маловато).
Проверил в Firefox и Chrome:
Firefox - цикл проходит, и данные запрашиваются для всех полей, но сами значения не изменяются.
Chrome -запрашивает данные и меняет только у первого (дальше цикл не идет).

УПД
Кое-что исправил. Теперь работает в хроме и мозилле (у меня, по крайней мере )
Код:
<html>
<head>

<script>
function Change() 
{
	var tagP=document.getElementsByTagName("p");
	var ln=tagP.length;
	var i;

	for (i=0; i<ln; i++)
	{
		if (tagP[i].id!="")
		{
			var new_text=prompt('Введите текст для элемента с id "'+tagP[i].id+'" :', "");
			if ((new_text=="")||(new_text==null))
				return;
			tagP[i].innerHTML=new_text;
		}
	}
}
</script>

</head>
<body>
<h2><p id="first">
Вариант 11-01
</p></h2>
<p id="second">
Создайте Web-страницу, в которой определяются и, с помощью метода alert, выводится список 
всех значений атрибута id в элементах страницы, содержащих текстовые узлы, а затем с помощью
 метода prompt для заданных идентификаторов задается новое содержимое текстового узла 
(признаком окончания изменения идентификаторов является ввод пустой строки). 
</p>
<p id="third">
Похоже, все работает :)
</p>


<a href=# onClick="Change();">Запустить скрипт</a>
</body>
</html>
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )

Последний раз редактировалось BDA; 05.04.2012 в 23:44.
BDA вне форума Ответить с цитированием
Старый 06.04.2012, 11:37   #4
sandak
Пользователь
 
Регистрация: 11.12.2011
Сообщений: 11
По умолчанию

Цитата:
Сообщение от BDA Посмотреть сообщение
Очень интересно (слежу за вашей темой, но знаний в этой области маловато).
Проверил в Firefox и Chrome:
Firefox - цикл проходит, и данные запрашиваются для всех полей, но сами значения не изменяются.
Chrome -запрашивает данные и меняет только у первого (дальше цикл не идет).

УПД
Кое-что исправил. Теперь работает в хроме и мозилле (у меня, по крайней мере )
Код:
<html>
<head>

<script>
function Change() 
{
	var tagP=document.getElementsByTagName("p");
	var ln=tagP.length;
	var i;

	for (i=0; i<ln; i++)
	{
		if (tagP[i].id!="")
		{
			var new_text=prompt('Введите текст для элемента с id "'+tagP[i].id+'" :', "");
			if ((new_text=="")||(new_text==null))
				return;
			tagP[i].innerHTML=new_text;
		}
	}
}
</script>

</head>
<body>
<h2><p id="first">
Вариант 11-01
</p></h2>
<p id="second">
Создайте Web-страницу, в которой определяются и, с помощью метода alert, выводится список 
всех значений атрибута id в элементах страницы, содержащих текстовые узлы, а затем с помощью
 метода prompt для заданных идентификаторов задается новое содержимое текстового узла 
(признаком окончания изменения идентификаторов является ввод пустой строки). 
</p>
<p id="third">
Похоже, все работает :)
</p>


<a href=# onClick="Change();">Запустить скрипт</a>
</body>
</html>
Я, кстати, потом так и исправил, а потом уже прочитал.
Восслався, великий innerHTML
sandak вне форума Ответить с цитированием
Старый 08.04.2012, 13:18   #5
sandak
Пользователь
 
Регистрация: 11.12.2011
Сообщений: 11
По умолчанию

Немного дополнил скрипт
BDA, огромнейшее спасибо!
sandak вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
работа с элементами массива aenk Помощь студентам 0 05.12.2011 12:48
Обработка Страницы, Javascript den2011den Работа с сетью в Delphi 4 04.03.2011 11:47
Можно ли менять содержимое страницы JavaScript-ом? DS75 JavaScript, Ajax 1 22.09.2010 18:36
Динамическое изменение URL страницы в JavaScript без перезагрузки страницы ilusha JavaScript, Ajax 7 25.02.2009 09:59
проверить текстовое поле веб-страницы на пустоту на языке JavaScript Екатерина007 JavaScript, Ajax 1 08.05.2008 05:52