Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   загрузка из файла в ячейку поля (https://javascript.ru/forum/dom-window/5011-zagruzka-iz-fajjla-v-yachejjku-polya.html)

_dima_ 08.09.2009 00:55

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

PS топик должен был называться "загрузка текста из файла в ячейку таблицы"

Octane 08.09.2009 01:08

Вы просите готовый скрипт с нуля.

Это работа, и за нее обычно платят деньги.
Для таких сообщений предназначен раздел форума "Работа".

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

Gvozd 08.09.2009 07:19

ajax

_dima_ 08.09.2009 16:11

перефразирую вопрос =)
есть таблица:
<html>
<head>
</head>

<body>
<table border="1">
	<tr>
		<td valign="top" width="820">
		<a href="index.htm" id="1">ссылка 1</a>
		<a href="index.htm" id="2">ссылка 2</a>
		<a href="index.htm" id="3">ссылка 3</a>
		</td>

		<div id="right">
		<td valign="top" height="231" width="171">
			<SCRIPT LANGUAGE="JavaScript">
		document.getElementById('1').onclick=function() {document.write("текст ссылки 1")}
		document.getElementById('2').onclick=function()	{document.write("текст ссылки 2")}
		document.getElementById('3').onclick=function()	{document.write("текст ссылки 3")}
		
		document.write("текст по умолчанию");
	</SCRIPT>

		</td>
		</div>
	</tr>
</table>

</body>
</html>


почему "текст по умолчанию" пишется где надо (в правой колонке), а текст, который появляется после нажатия на ссылку, появляется заместо всей страницы?

Gvozd 08.09.2009 17:05

потому что document.write пишет в поток только в случае еще не сформированной страницы
после события window.onload будет происходить перезапись документа
используйте свойство innerHTML нужного вам тега, для того чтобы переписать его содержимое
document.getElementById('qwe').innerHTML='новый текст';

_dima_ 08.09.2009 23:55

Gvozd, спасибо)

попробывал:
<html>
<head>
</head>
<body>
<table border="1">
	<tr>
		<td valign="top" width="500">
		<a href="index.htm" id="1">ссылка 1</a>
		<a href="index.htm" id="2">ссылка 2</a>
		<a href="index.htm" id="3">ссылка 3</a>
		</td>

		<td valign="top" width="500">
			<div id="right">
			текст по умолчанию
			</div>
		</td>
	</tr>
</table>
<SCRIPT LANGUAGE="JavaScript">
document.getElementById('1').onclick=function() {document.getElementById('right').innerHTML='текст ссылки 1';}
document.getElementById('2').onclick=function()	{document.write("текст ссылки 2");}
document.getElementById('3').onclick=function()	{document.write("текст ссылки 3");}
</SCRIPT>
</body>
</html>


в IE 8 при нажатии "ссылка 1" в правой колонке моргает надпись "текст ссылки 1" и все возвражается в состояние до нажатия. то есть так же пишется "текст по умолчанию"

Gvozd 09.09.2009 01:28

судя по всему, потому что у вас не отменяется действие по умолчанию у ссылки(переход по ссылке)
таким образом, после щелчка по ссылке, вы сперва видите новую надпись, а потом переходите на эту же страницу, и как результат видите снова старую, изначальную надпись
решается добавлением в обработчик события return false;
это отменяет действие по умолчанию, и по ссылке перехода не произойдет
PSв других оработчиках document.write() также стоит заменить на innerHTML

_dima_ 09.09.2009 07:06

Gvozd,
спасибо вам!
сегодня еще над загрузкой из файла подумаю. может как-то через jQuery получится... в принципе содержимое файла уже выводится, но, опять-таки, перезаписывая все остальное.

_dima_ 11.09.2009 11:11

сделал через iframe.
что-то типа
var IframeId= document.getElementById('iframe');
document.getElementById('TopMenuAboutCompany').onclick=function()
	{
	IframeId.src = "/html/TopMenu/AboutCompany.html";
	IframeId.height = "400";
	return false;
	}

_dima_ 11.09.2009 12:19

еще один вопрос назрел.
надо поменять цвет и надпись у ссылки. пытаюсь через:
document.getElementById('ИДСсылки').value = "&nbsp;- о компании&nbsp;&nbsp;"
но не получается...


Часовой пояс GMT +3, время: 03:50.