Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   [HELP] ID +/- 1 (https://javascript.ru/forum/misc/1366-%5Bhelp%5D-id-1-a.html)

AlexandrSN 02.07.2008 15:36

[HELP] ID +/- 1
 
Доброго времени суток!

Подскажите пожалуйста, как прописать кнопки "Next" и "Previous", чтобы страница во фрейме менялась? Постараюсь расписать:
есть страница с значением таким - option=com_appform&task=preview&submitted_id=1000. Надо, чтобы при нажатии на кнопку "Next" ID принимал значение больше на 1 (id=1000, id=1001, id=1002...), а при нажатии кнопки "Previous" - ID меньше на 1 (id=1001, id=1000, id=999...).

Будте добры подсказать.
Спосибо.

Gvozd 02.07.2008 15:58

надо взять объект window.location соответствующей страницы, пропарсить его на строчку submitted_id=1000, и прописать ссылку с большим/меньшим id

AlexandrSN 02.07.2008 18:20

Цитата:

Сообщение от Gvozd (Сообщение 3424)
надо взять объект window.location соответствующей страницы, пропарсить его на строчку submitted_id=1000, и прописать ссылку с большим/меньшим id

Gvozd,

извините пожалуйста. Я в этом деле ещё нубик. Могли бы толком расписать или хотя б примерчик простенький показать?

Gvozd 07.07.2008 16:45

во. руки таки дошли)
function next()
	{
	var loc=window.location+"";
	//получаем текущий адрес
	var regexp = /(.*submitted_id=)(\d*)(.*)/
	//регулярное выражение, для нахождения нужной части адреса для замены
	window.location=loc.replace(regexp,function(str,p1,p2,p3){return (p1+(p2*1+1)+p3)})
	//замена при помощи анонимной функции, которая увеличивает ИД, и изменение текущего адреса на новый
	}
function prev()
	{
	var loc=window.location+""; 
	var regexp = /(.*submitted_id=)(\d*)(.*)/
	window.location=loc.replace(regexp,function(str,p1,p2,p3){return (p1+(p2*1-1)+p3)})
	}

AlexandrSN 07.07.2008 22:04

Gvozd,

спосибо большое за помощь =) Я попробовал вашу функцию. Я пока понять не могу, работает или нет, потому что не знаю точно, куда её вставлять: между тэгами <IFRAME></IFRAME> или прописать в тэг <FORM>? Если в любое другое место, то на странице виден текст этой функции. Будте добры объяснить.

Ещё раз спосибо!

Андрей Параничев 07.07.2008 22:42

AlexandrSN,
Нужно обрамить этот код тегами <script></script> и прописать внутрь секции <head>.

А использовать код нужно примерно так:
<a href="javascript: prev()">Назад</a> <a href="javascript: next()">Вперёд</a>

Или вешать на события onClick у соответствующих ссылок.

AlexandrSN 11.07.2008 14:13

Gvozd, Андрей Параничев,

огромное спосибо за вашу помощь!!! Премного благодарен! =)


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