Помощник
|
Обновление div при нажатии на кнопку |
Dima888_hb
|
Сообщение
#1
|
||
|
|
||
|
|||
Letmetouchyou |
2.2.2010, 23:33;
Ответить: Letmetouchyou
Сообщение
#2
|
|
ajax.
ассинхронная загрузка контента. постмри библотку Jquery: функции .load() $.ajax() $.getJSON() и тд |
|
|
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
|
Сообщение
#4
|
|
[I]ZhukV, к чему ты это написал, я вообще не понимаю...[/I]
|
|
|
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 |
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 |
3.2.2010, 17:20;
Ответить: ZhukV
Сообщение
#7
|
|
Да, кстати хочу напомнить, ЕСЛИ НУЖНО ТОЛЬКО ОДИН РАЗ ПОМЕНЯТЬ КРАТКИЙ ТЕКСТ, ТО НЕ СТОИТЬ ПОДКЛЮЧАТЬ БЫБЛИОТЕКИ, ТИПА jQuery!!!, потому, что это не рационально с точки зрение как и програмного кода, так и скорости выполнение установленных задач!!!
|
|
|
Dima888_hb
|
Сообщение
#8
|
|
Letmetouchyou, ну это ж не то совсем..
ZhukV, спасибо, ты правильно понял задачу, но только надо не 1 раз поменять (до этого я уже дошёл сам), а раз 10, причём когда загрузится 10-ый раз - то нажатие на кнопку покажет снова 1-ый комментарий (то есть будет показано бесконечное число раз, по кругу) - вот тут я уже слаб, никак не могу понять, как это сделать, подскажи пожалуйста если знаешь |
|
|
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 |
3.2.2010, 18:09;
Ответить: ZhukV
Сообщение
#10
|
|
Если нужно что-то сложнее, пишы!!!
|
|
|
|
Похожие темы
Тема | Ответов | Автор | Просмотров | Последний ответ | |
---|---|---|---|---|---|
Мегамаркет. Скидка 1000 рублей при покупке от 5000 рублей на все, на первый заказ. Мегамаркет. Скидка 1000 рублей при покупке от 5000 рублей на все, на п |
7 | stu999 | 1753 | 31.3.2024, 11:19 автор: stu999 |
|
Моя div-ная верстка соответствует ли стандартам Хотелось бы конструктивной критики |
10 | muratastana | 1596 | 14.1.2023, 1:16 автор: xweb |
|
Получил странную ссылку при линкбилдинге Как поведет себя поиск при обнаружении странной ссылке? |
10 | r0mZet | 2203 | 24.10.2022, 19:23 автор: Wachowski |
|
300 площадок под вечные ссылки на выбор: ТИЦ 20-9400, PR 0-6, ЯК, DMOZ. Скидки при пакетном заказе! | 65 | inkon | 30381 | 19.7.2022, 13:41 автор: Funoman |
|
тИЦ отменили! Новый показатель Яндекса ИКС! Лучшие площадки под размещение. Бесплатное написание статей при любом заказе. Эксклюзивное предложение. Успей получить написание статей БЕСПЛАТНО |
71 | VIMstat | 78481 | 21.6.2022, 9:38 автор: VIMstat |
Текстовая версия | Сейчас: 20.4.2024, 4:10 |