2013-02-22 5 views
0

В моем текущем проекте пользователь нажимает «Сохранить изменения» на то, что они редактируют, и он далее находится на странице, где появляется окно редактирования, сохраненный текст и т. Д. .... Есть ли способ, чтобы сайт сохранял местоположение страницы, чтобы автоматически прокручивать их обратно до того места, где они нажимали на редактирование?Когда действие формы на той же странице, сохраните позицию страницы?

В идеале у меня было бы какое-то решение, где страница не должна была перезагружаться, но я не знаю, как это сделать, lol.

Мой сайт закодирован на PHP.

Благодаря

ответ

2

Вы можете захотеть взглянуть на некоторые учебники о том, как сохранить форму с помощью AJAX. Это означает, что вы не загружаете страницу, и поэтому она не будет обновляться, и пользователь не потеряет свою позицию на странице.

http://www.jstiles.com/Blog/How-To-Submit-a-Form-with-jQuery-and-AJAX
http://www.devblog.co/easy-jquery-ajax-php-contact-form/

0

Да, использовать Ajax для обновления страницы частично. Это способ сделать это в любой веб-технологии.

3

Существует одна функциональность в Html для размещения вашей страницы с помощью (#).

Например, учитывая следующий сценарий, где ваша кнопка Edit находится

<div id="editButton"> 
<input type="button" name="Edit" value ="Edit"/> 
</div> 

Если название страницы «index.php» и перенаправлять с URL: «index.php # editButton» Вашей страницы автоматически перейдет к этой секции без особых усилий.

Он идентифицирует идентификатор элемента и помещает прокрутку в это положение.

Cheers

0

Да, хорошо иметь такой подход.

Вместо полного перенаправления необходимо передать и загрузить только кусок данных.

Для этого вам нужно http://www.w3schools.com/ajax/default.ASP

затем, узнать Jquery (надеюсь, Вы знакомы с тем, что это идентификатор и класс в CSS) ...

http://api.jquery.com/jQuery.ajax/

Круто?

0

Если у вас несколько форм на одной странице, вы можете добавить атрибут name этой формы для ссылки. например

<form name="my-form1" action="form.php#my-form1"> 

Я думаю, это должно сработать.

Другим способом является использование Ajax, поэтому вам не нужно перезагружать страницу вообще, или вы можете создать функцию javasscript, которая будет вызываться в форме submit и добавит текущую позицию страницы в скрытый ввод. После перезагрузки страницы вы можете перейти к исходной позиции, используя значение из этого скрытого ввода.

2

Я просто поставить имя селектора в форме действия:

<form class="form-horizontal" method="post" action="#regform"> 

И это работает для меня.

Смежные вопросы