Изменения без перезагрузки

Статус
В этой теме нельзя размещать новые ответы.

yeaahhh

Старатель
Регистрация
8 Май 2008
Сообщения
278
Реакции
11
Друзья. Подскажите пожалуйста самый разумный и простой способ реализации следующей проблемы:
По нажатию на ссылку "добавить в друзья", пользователь добавляется в друзья..
Код прописан в теле страницы, т.е. выполняется в том же php-файле, откуда и вызывается ссылка.. После нажатия, друг добавляется, но ссылка "Добавить в друзья остаётся и не меняется на "Удалить из друзей"..
Пробовал header location, но не работает, пишет, что header уже используется..

К сожалению, с AJAX не знаком.. (если данное действие реализуется только через ajax, то хотелось бы узнать, сколько в среднем времени нужно затратить на изучение, чтобы оперировать с такими асинхронными запросами..?)
 
Может на js попробовать сделать. Просто по клику подменить текст в элементе с 'Добавить в друзья' на 'Удалить из друзей' с помощью innerHTML и атрибут href у ссылки также.
 
Может на js попробовать сделать. Просто по клику подменить текст в элементе с 'Добавить в друзья' на 'Удалить из друзей' с помощью innerHTML и атрибут href у ссылки также.

интересно что будет если после такой подмены юзер перезагрузит страницу ....

==============

без перезагрузки и самый простой способ - только аякс

>>сколько в среднем времени нужно затратить на изучение, чтобы оперировать с такими асинхронными запросами..

есть фремворки, тот-же jQuery
грубо говоря вся премудрость аякса вложена в 2 ф-ции

Для просмотра ссылки Войди или Зарегистрируйся
Для просмотра ссылки Войди или Зарегистрируйся

=> за пару мин вы сможете сделать то что вам нужно
 
Ребят.. Как отправлять запросы в фоновом режиме примерно понял.. Но, не пойму, как сделать так, чтобы сначала надпись была одна, а после отправки - другая?
Заранее спасибо..
 
  • Заблокирован
  • #5
С помощью jquery:

Соответственно, при нажатии на кнопке отправляем с помощью jquery запрос серверу и меняем текст как на этом сайте.
 
Может на js попробовать сделать. Просто по клику подменить текст в элементе с 'Добавить в друзья' на 'Удалить из друзей' с помощью innerHTML и атрибут href у ссылки также.
:D А AJAX не JS?
Пробовал header location, но не работает, пишет, что header уже используется..
Наверное пишут, что уже отправлен. значит либо где то до header(... пользовался echo/print или просто перед открытием/закрытием php кода лишний пробел поставил.
 
Ребят.. Как отправлять запросы в фоновом режиме примерно понял.. Но, не пойму, как сделать так, чтобы сначала надпись была одна, а после отправки - другая?
Заранее спасибо..

Примерно так:

Допустим у тебя есть ссылка:

<div id="friends">
<a href="#">Добавить в друзья</a></div>
</div>

Тогда пишешь запрос вида:

$.ajax({
type: "GET",
url: link,

beforeSend: function(){
jQuery('#friends').html('Добавляем... Ждите');
},

success: function(msg){

if (msg == 'success') {

jQuery('#friends').html('Друг добавлен!');

} else {
alert('Ошибка добавления друга');
jQuery('#friends').html('<a href="#">Добавить в друзья</a>');


}

}

p.s. Оффтопик: почему на нулледе до сих пор нет раздела JS, это единственный русский форум где по созданным темам идет дискуссия :)
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху