X   Сообщение сайта
(Сообщение закроется через 3 секунды)



 

Здравствуйте, гость (

| Вход | Регистрация )

3 страниц V   1 2 3 >
Открыть тему
Тема закрыта
> Обновление div при нажатии на кнопку
Dima888_hb
Dima888_hb
Topic Starter сообщение 2.2.2010, 20:51; Ответить: Dima888_hb
Сообщение #1


Всем привет!
Стоит следующая задача: при нажатии на кнопку "Read other testimonials" - надо чтобы менялся сам отзыв (см на картинку)... Кто сталкивался? Подскажите пожалуйста в каком направлении ковырять или может готовое решение.
0
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Letmetouchyou
Letmetouchyou
сообщение 2.2.2010, 23:33; Ответить: Letmetouchyou
Сообщение #2


ajax.
ассинхронная загрузка контента.
постмри библотку Jquery:
функции

.load()
$.ajax()
$.getJSON()

и тд
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
ZhukV
ZhukV
сообщение 3.2.2010, 14:13; Ответить: ZhukV
Сообщение #3


Для этого я использую jQuery.
Вот примерный код, из моего сайта.
function edit_ogoloshennya(id,type){
    if(typeof id=='undefined' || id=='' || typeof type=='undefined' || type==''){alert('Не вибрано тип форматування оголошення!!!');return false;}
    datar='id='+id;
    if(type=='delete'){datar+='&type=delete';}
    if(type=='remove'){datar+='&type=remove';}
    var result='';
    jQuery.ajax({
        async:false,
        url:'/query/edit_ogoloshennya/query.php',
        dataType:'text',
        data:datar,
        success:function(data){
            result=data;
        }
    })
    if(result=='false'){alert("Помилка з'єднання з сервером, будь ласка, спробуйте пізніше.")}
    if(result=='true'){
        ord="'";
        if(type=='delete'){
            jQuery('#edit_'+id+', #status_ogo_'+id).remove();
            jQuery('<div id="edit_'+id+'"><a style="color:blue" onClick="edit_ogoloshennya('+id+','+ord+'remove'+ord+')">Відновити оголошення</a></div>').appendTo('#edit_ogo_'+id);
            jQuery('<div id="status_ogo_'+id+'" style="color:red"><br><center>Оголошення успішно видалено.</center></div>').appendTo('#status_'+id);
        }
        if(type=='remove'){
            jQuery('#edit_'+id+', #status_ogo_'+id).remove();
            jQuery('<div id="edit_'+id+'"><a style="color:blue" onClick="edit_ogoloshennya('+id+','+ord+'delete'+ord+')">Видалити оголошення</a><br><a style="color:blue" onClick="jumpMM('+ord+'http://freeboard.km.ua/?page=login&type=edit&id='+id+ord+')">Редагувати оголошення</a></div>').appendTo('#edit_ogo_'+id);
            jQuery('<div id="status_ogo_'+id+'" style="color:red"><br><center>Оголошення успішно відновлено.</center></div>').appendTo('#status_'+id);
        }
        return true;
    }
    alert(result);
}


а здесь примерный код html
<div id="edit_ogo_23277">
<div id="edit_23277">
<a style="color:blue" onClick="edit_ogoloshennya(23277,'delete')">Видалити оголошення</a><br>
<a onClick="jumpMM('http://freeboard.km.ua/?page=login&type=edit&id=23277')" style="color:blue">Редагувати оголошення</a>
</div>
</div>
<div style="color:red" id="status_23277"></div>
</div>



Сразу. предупреждение, дата подання, та дата, к которой действительно, показывают неверно, поскольку это был полный импорт базы.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Dima888_hb
Dima888_hb
Topic Starter сообщение 3.2.2010, 16:16; Ответить: Dima888_hb
Сообщение #4


[I]ZhukV, к чему ты это написал, я вообще не понимаю...[/I]
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Letmetouchyou
Letmetouchyou
сообщение 3.2.2010, 16:56; Ответить: Letmetouchyou
Сообщение #5


вот на офруме писал
http://www.html.by/showthread.php?t=9673&page=2
ссылка на сообшение
http://www.html.by/showpost.php?p=55130&postcount=15

вот пример

только тут стаиические страницы подгружаються.
если старницы нада генерировать , брать инфу из БД и тому подобное,
там или аякс запросы едлать.

или можешь псдлеать подин подгружаемый файл пхп и в него передавай пост или гет переменные и в зависимости от них генерируй контент.

$('.block').load('page.php',{'c':1});
вот напрмиер в блок класса block загружаеться страница page.php и ей передаютсья POST перемнная c=1;
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
ZhukV
ZhukV
сообщение 3.2.2010, 17:08; Ответить: ZhukV
Сообщение #6


Хорошо, постараюсь описать:
Как я понял, тебе нужно при нажатие на кнопку, чтоб изменялся текст, верно?

Так вот.

Для начала опишем контейнер, в котором должен менятся текст. Нададим этому еонтейнеру атрибут id.

<div id="myText"></div>


Вот HTML код, который получится:

<div id="myText">
Текст, котрый ты хочеш вставить(начало)
</div>


Ну а тепер создадим кнопку, тоесть элемент div, по клыке на котором будет срабатывать определенной действий, в твоём случае, это замена тектса.

Вот те код кнопки, или чего-то другого(выбиреш себе сам)
<div id="but" style="border:1px #FF0000 solid">
КНОПКА
</div>


Ну а тепер приступим к javascript.

Если тебе нужно только изменить текст содержымого блока, для начала тебе его нужно изять из структуры дом элементов.
За это в читом javascript отвечает метод getElementById()

Вот код скрипта, котрый получится:
var qw=document.getElementById('myText');

Ну а тепер нужно изменить сам тект. За изменение текста внутри определенного контейнера, тоесть элемента, отвечает метод innerHTML(text), где text- текст, на который ты хочеш изменить;

Вот и код скрипта, котрый получится:

var qw=document.getElementById('myText');
qw.innerHTML('Ура, текст изменился')


Ну а теперь его лучше усунуть в отдельную функцию, чтоб потом было лекше.

function remove_text(){
var qw=document.getElementById('myText');
qw.innerHTML('Ура, текст изменился')
}


Ну а тепер нам нужно эту функцию гдета применить, тоесть инициализовать.

Лучше засунуть ее напрямую в контейнер кнопки. Вот код кнопки, котрый получится:

<div id="but" style="border:1px #FF0000 solid" onclick="remove_text()">
КНОПКА
</div>


Ну так, проверил в браузерах, конает!!!!

Ни и на конец полный код:
<div id="myText">
Текст, котрый ты хочеш вставить
</div>
<div id="but" style="border:1px #FF0000 solid" onclick="remove_text()">
КНОПКА
</div>
<script type="text/javascript">
function remove_text(){
qw=document.getElementById('myText');
qw.innerHTML='Ура, текст изменился!!!';
}
</script>
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
ZhukV
ZhukV
сообщение 3.2.2010, 17:20; Ответить: ZhukV
Сообщение #7


Да, кстати хочу напомнить, ЕСЛИ НУЖНО ТОЛЬКО ОДИН РАЗ ПОМЕНЯТЬ КРАТКИЙ ТЕКСТ, ТО НЕ СТОИТЬ ПОДКЛЮЧАТЬ БЫБЛИОТЕКИ, ТИПА jQuery!!!, потому, что это не рационально с точки зрение как и програмного кода, так и скорости выполнение установленных задач!!!
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Dima888_hb
Dima888_hb
Topic Starter сообщение 3.2.2010, 17:45; Ответить: Dima888_hb
Сообщение #8


Letmetouchyou, ну это ж не то совсем..



ZhukV, спасибо, ты правильно понял задачу, но только надо не 1 раз поменять (до этого я уже дошёл сам), а раз 10, причём когда загрузится 10-ый раз - то нажатие на кнопку покажет снова 1-ый комментарий (то есть будет показано бесконечное число раз, по кругу) - вот тут я уже слаб, никак не могу понять, как это сделать, подскажи пожалуйста если знаешь
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
ZhukV
ZhukV
сообщение 3.2.2010, 18:08; Ответить: ZhukV
Сообщение #9


Здесь модна несколькоми вариантами.
Если текста действительно очень много, лучше сделать на jQuery и аякс, ну а если текста мало, то лучше на массиве.



Вот код на массиве (почти то самое, что и в первом примере):
<div id="myText">
Текст, котрый ты хочеш вставить
</div>
<div id="but" style="border:1px #FF0000 solid" onclick="remove_text()">
КНОПКА
</div>
<script type="text/javascript">
var qwArr=Array('Zhuk','Vitaliy','Volodumurovich','_puma_.91@mail.ru','http://freeboard.km.ua');//в этот массив до***й, сколько тебе угодно, но если тексты малы
var NowArr=0;
function remove_text(){
qw=document.getElementById('myText');
qw.innerHTML=qwArr[NowArr];
NowArr++;
if(NowArr>qwArr.length-1){NowArr=0}
}
</script>
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
ZhukV
ZhukV
сообщение 3.2.2010, 18:09; Ответить: ZhukV
Сообщение #10


Если нужно что-то сложнее, пишы!!!
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
3 страниц V   1 2 3 >
Открыть тему
Тема закрыта
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


Свернуть

> Похожие темы

  Тема Ответов Автор Просмотров Последний ответ
Открытая тема (нет новых ответов) Мегамаркет. Скидка 1000 рублей при покупке от 5000 рублей на все, на первый заказ.
Мегамаркет. Скидка 1000 рублей при покупке от 5000 рублей на все, на п
7 stu999 1753 31.3.2024, 11:19
автор: stu999
Открытая тема (нет новых ответов) Моя div-ная верстка соответствует ли стандартам
Хотелось бы конструктивной критики
10 muratastana 1593 14.1.2023, 1:16
автор: xweb
Открытая тема (нет новых ответов) Получил странную ссылку при линкбилдинге
Как поведет себя поиск при обнаружении странной ссылке?
10 r0mZet 2203 24.10.2022, 19:23
автор: Wachowski
Горячая тема (нет новых ответов) 300 площадок под вечные ссылки на выбор: ТИЦ 20-9400, PR 0-6, ЯК, DMOZ. Скидки при пакетном заказе!
65 inkon 30375 19.7.2022, 13:41
автор: Funoman
Горячая тема (нет новых ответов) тИЦ отменили! Новый показатель Яндекса ИКС! Лучшие площадки под размещение. Бесплатное написание статей при любом заказе.
Эксклюзивное предложение. Успей получить написание статей БЕСПЛАТНО
71 VIMstat 78474 21.6.2022, 9:38
автор: VIMstat


 



RSS Текстовая версия Сейчас: 19.4.2024, 0:13
Дизайн