Здравствуйте. Я начал изучать JS + AJAX сразу же и вообщем написал функцию но ничего не работает Скорее всего все не правильно , но как правильно понять пока что не могу . Вообщем как я думаю как все работает, поправьте если я не прав. Я использую bootsrtap а в частности такую клевую штуку как модальные окна. Поэтому я хочу в модальное окно передать парметр и чтото с ним сделать. Я так понял что для бутстрапа есть специальное событие открытие(точнее будет сказать отображение) окна shown.bs.modal. Поэтому я хочу написать функцию которая бы сработала после открытия этого окна и сделала сама асинхронный пост- запрос без обновления формы . Она бы взяла этот параметр который я передаю в модальное окно и пульнула его туда в ПОСТ-масиве и таким образом я бы смог его нормально обработать.Вытащить от туда нужный мне элемент и отправить его в мою функцию. Я сделал вот так Код (Javascript): $.ajax.on('shown.bs.modal',function()({ type: 'POST', url: 'Tempdata.php', data: тут поидее мой параметр передается но как его взят я не знаю, success: function(data){ $(#myModalBox).html(data); } }); но ничего не работает. Вот это работает Код (Javascript): $(document).on("click",".open-AddBookDialog",function(){ var myorgid = $(this).data('id'); alert(myorgid); } ) Скажите как совместить эти два скрипта ?? В переменную myorgid передается правильное значение но как мне его потом передать в аяксовую функцию ? И вообще как правильно ее написать ??
Код (Javascript): $(document).on("click",".open-AddBookDialog",function(){ var myorgid = $(this).data('id'); alert(myorgid); $.ajax({ type: "POST", url:"Tempdata.php", data: "orgid="+myorgid, succeess :function(text){ alert("ffff"); } }) } ) Сделал вот так , но всеравно не работает
не юзай $.ajax метод. Это низкоуровневый метод с большим числом настроек. Используй $.post() - он простой как палка.
Что значит "не работает"? Запрос не отправляет? А может отправляет, но у тебя сервер не отвечает на него? А может отправляет, но не туда? Ты уверен, что у тебя имя файла, принимающего запрос, с большой буквы начинается? Открываем инструменты разработчика в браузере, вкладка sources/исходники, находим там твой код, ставим брейкпоинты, отлаживаем пошагово.
хмм написал вот так Код (Javascript): $(document).on("click",".open-AddBookDialog",function(){ var myorgid = $(this).data('id'); alert(myorgid); $.post("Tempdata.php",{orgid: myorgid} ,function (r){alert(r);}); ) ,алерт не выводится , и при этом в Код (Javascript): echo "<pre>"; print_r("bbb".$_POST['orgid']); echo "</pre>"; кроме bbb ничего не выводится и еще отображается новое окно которое выводит весь html код
да я уже так сделал, оказывается почему то бутстрап не успевает получить id и отображает страницу раньше чем выводит модальное окно А так аяксовый запрос работает
Бутстрап ничего не делает сам. Страницу отображает браузер. То, в каком порядке происходят процессы на странице, определяется разработчиком. Пилите, Шура, пилите.
Наверное нужно типа такого: PHP: //Идем почитывать http://jquery.page2page.ru/index.php5/Ajax $('#myModal').on('shown.bs.modal', function () { alert('Окно открыли, отправляем данные через $.post или $.get или еще как-нибудь') });
спасибо за ссылку сейчас почитаю --- Добавлено --- да я думал что это хорошая идея , я вообще не думал что это все в такой жеский головняк выльется, я вообще в шоке просто
потому что боженька тебя бережет ибо для тех, кто попапает модалы при загрузке - для тех отдельное место в аду греется
Например, дать выбрать город по умолчанию для нового посетителя, и поставить куку с данным городом, при последующих заходах данного посетителя отдавать данные по городу куки
да там все сложнее. У меня есть таблица со списком и нужно при щелчке на каждой записи из этой таблице чтобы появлялось окно с инфой по этой строке.
--- Добавлено --- да там все сложнее. У меня есть таблица со списком и нужно при щелчке на каждой записи из этой таблице чтобы появлялось окно с инфой по этой строке.
@marsik это не причина для попапа =) чесслово. для попапа при загрузке страницы нет причин. вообще и никогда. --- Добавлено --- @timur2008 и нафига тогда попап и аякс при загрузке?
Логика то не сложная, по клику открывай окно и подгружай туда данные Попапы - необходимое зло)) Сам использую на одном сайте, если у посетителя нет куки посетителя, что он уже тут был -> открываю окно с выбором города и вешаю куку посетителя. Многие по таком принципу открывают окно с подпиской на их паблики
ну я не согласен. я попапы использую только в случае если надо переспросить точно при точно что-то критическое. Город можно спрашивать не попапом, а плашкой сверху. Это не напрягает. А блокирующий основной контент попап это как хватать за руку.
бывает ситуация когда в модальном окне что-то важное и оно вызывается нажатием на кнопку, но адрес страницы меняется (например якорь добавляется) и можно этот адрес переслать, тогда при загрузки страницы необходимо показать это модальное окно сразу
и в каком таком случае при переходе на отдельную страницу, связанную с определённым действием, нужно показать модал, а не показать содержимое модала прямо на этой специальной странице? =)