да там все сложнее. У меня есть таблица со списком и нужно при щелчке на каждой записи из этой таблице чтобы появлялось окно с инфой по этой строке. а если не через попапы делать ? то как это делать открывается новый фрэйм и в нем выводятся данные? асинхронно
Если окна напрягают, можно Что там сложного? Все просто, по клику загружаете $.get данные по атрибуту в див окна, открываете окно. Если без окна то исключаете последнее звено, т.е. грузите инфу в нужный див
да я так и делаю , но постоянные косяки надоели уже. теперь нужно два раза ткнуть по строке чтобы чтобы вывелись данные. В первый раз поменяется именно сама html страница а когда второй раз тыкаешь только тогда нужная инфа появляется.
Код (Javascript): <script> $(document).on("click",".open-AddBookDialog",function(){ var myorgid = $(this).data('id'); SendPost(myorgid); } ) function SendPost(id){ var myorgid = id; $.ajax({ type: 'POST', url: 'ajax.php', data: { orgid: myorgid, }, success: function(data){ $('.modalclass').html(data); } }); }; </script> В классе ajax.php PHP: ?> <div class="modalclass">eeee<?php print_r($_POST['orgid'])?></div> <?php $modal = new modalpage(); print_r($modal->getModal($_POST['orgid'])); ну и сам класс modalpage PHP: <?php require_once 'Organisationsinfoview.php'; /* * To change this license header, choose License Headers in Project Properties. * To change this template file, choose Tools | Templates * and open the template in the editor. */ /** * Description of modalpage * * @author Tim */ class modalpage { public function getModal($orgid) { ?> <div id="myModalBox" class="modal fade"> <div class="modal-dialog"> <div class="modal-content"> <div class="modal-header"> <button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button> <h4 class="modal-title">Проблемы организации</h4> </div> <div class="modal-body"> <?php $view = new Organisationsinfoview(); $view->getView($orgid); ?> </div> <div class="modal-footer"> <button type="button" class="btn btn-default" data-dismiss="modal">Закрыть</button> </div> </div> </div> </div> <?php } } там есть PHP: <?php $view = new Organisationsinfoview(); $view->getView($orgid); ?> там как раз и рисуется наша таблица с нужными данными
Как-то так, добавляйте нужные опции Код (Javascript): $(document).on("click",".open-AddBookDialog",function(){ $.get("/ajax.php", { orgid: $(this).data('id') }, function(data) { $('.modalclass').html(data); }); } );
Лишнее в коде, так: Код (Javascript): $(document).on("click",".open-AddBookDialog",function(){ $.get("/ajax.php", { orgid: $(this).attr('id') }, function(data) { $('.modalclass').html(data); $('#myModalBox').modal('show'); }); } );
не bootstrap что-ли? закомментируйте: //$('.modalclass').html(data); //$('#myModalBox').modal('show'); вместо них впишите alert(data); узнаем, приходят ли данные
тогда окно выводит с HTML: <div class="modalclass">eeee</div> <div id="myModalBox" class="modal fade"> <div class="modal-dialog"> <div class="modal-content"> <div class="modal-header"> <button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button> <h4 class="modal-title">Проблемы организации</h4> </div> <div class="modal-body"> <legend>Проблемы</legend> <table class="table" id="content" cellspacing="0" width="100%"> <thead> <tr> <th>фио</th> <th>время</th> <th>контактная инфа</th> <th>проблема</th> <th>инн</th> <th>название организации</th> <th>статус</th> <th>отправить</th> </tr> </thead> <tbody> </tbody> </div> </table> </div> <div class="modal-footer"> <button type="button" class="btn btn-default" data-dismiss="modal">Закрыть</button> </div> </div> </div> </div>
с этим скриптом походу нет, а с тем передается там в ответе вот такая штука HTML: <div class="modalclass">eeee</div> <div id="myModalBox" class="modal fade"> <div class="modal-dialog"> <div class="modal-content"> <div class="modal-header"> <button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button> <h4 class="modal-title">Проблемы организации</h4> </div> <div class="modal-body"> <legend>Проблемы</legend> <table class="table" id="content" cellspacing="0" width="100%"> <thead> <tr> <th>фио</th> <th>время</th> <th>контактная инфа</th> <th>проблема</th> <th>инн</th> <th>название организации</th> <th>статус</th> <th>отправить</th> </tr> </thead> <tbody> </tbody> </div> </table> </div> <div class="modal-footer"> <button type="button" class="btn btn-default" data-dismiss="modal">Закрыть</button> </div> </div> </div> </div>
HTML: "<td id='orgdata'><a href='#myModalBox' data-id=".$this->Problem->getOrganisationFKid()." class='open-AddBookDialog' data-toggle='modal'>".$name."</a></td>"
не может быть такого, с тем который передается указан $(this).data('id'), логично предположить что и здесь с $(this).data('id') должен передаваться
я так в начале тоже думал , и когда в первый раз запускал с бутстрапом эту тему , но так не работало, потом сделал как в примере и заработало.Т.е как я изначально сделал.
Вообщем анализирую пост ответ нажали первый раз кликнули во вкладке ответ PHP: <div class="modalclass">eeee5390</div> <div id="myModalBox" class="modal fade"> <div class="modal-dialog"> <div class="modal-content"> <div class="modal-header"> <button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button> <h4 class="modal-title">Проблемы организации</h4> </div> <div class="modal-body"> <legend>Проблемы</legend> <table class="table" id="content" cellspacing="0" width="100%"> <thead> <tr> <th>фио</th> <th>время</th> <th>контактная инфа</th> <th>проблема</th> <th>инн</th> <th>название организации</th> <th>статус</th> <th>отправить</th> </tr> </thead> <tbody> <tr> <td><h4>20.04.17</h4></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> </tr> <tr id='idpag'><form method='POST' action='Tempdata.php' class='form-inline'><input type="hidden" id="ident0" size="0" name="id" value="818"> <input type="hidden" id="orgId" size="0" name="orgid" value=""> <input type="hidden" id="typeProbl0" size="0" name="myProblem" value=""> <td><label id= >Михайлов Т.Ш.</label></td><td><input type="time" id="id_time0" size="" name="timeproblem" value="14:46"></td><td><input type="text" id="id_contact0" size="" name="contactInfo" value="923-423-0535"></td><td><input type="textarea" id="id_problem0" size="" name="problemDescription" value="Проблема на площадке, написала в тп"></td><td><label id= >7017354603</label></td><td id='orgdata'><a href='#myModalBox' data-id= class='open-AddBookDialog' data-toggle='modal'><label id=idname >ООО «Салют»</label></a></td><td><select size = '1' name='problemstatus' ><option value='Не решена'>Не решена</option><option value='Решена'>Решена</option><option value='Удалить'>Удалить</option></select></td> <td><button type='submit' class='btn btn-primary btn-md'>Обновить</button></td></form></tr> <tr> <td><h4>10.04.17</h4></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> </tr> <tr id='idpag'><form method='POST' action='Tempdata.php' class='form-inline'><input type="hidden" id="ident1" size="0" name="id" value="586"> <input type="hidden" id="orgId" size="0" name="orgid" value=""> <input type="hidden" id="typeProbl1" size="0" name="myProblem" value=""> <td><label id= >Заремба А.В.</label></td><td><input type="time" id="id_time1" size="" name="timeproblem" value="09:14"></td><td><input type="text" id="id_contact1" size="" name="contactInfo" value=""></td><td><input type="textarea" id="id_problem1" size="" name="problemDescription" value="крипоп не работает"></td><td><label id= >7017354603</label></td><td id='orgdata'><a href='#myModalBox' data-id= class='open-AddBookDialog' data-toggle='modal'><label id=idname >ООО «Салют»</label></a></td><td><select size = '1' name='problemstatus' ><option value='Решена'>Решена</option><option value='Не решена'>Не решена</option><option value='Удалить'>Удалить</option></select></td> <td><button type='submit' class='btn btn-primary btn-md'>Обновить</button></td></form></tr> <tr> <td><h4>07.04.17</h4></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> </tr> <tr id='idpag'><form method='POST' action='Tempdata.php' class='form-inline'><input type="hidden" id="ident2" size="0" name="id" value="572"> <input type="hidden" id="orgId" size="0" name="orgid" value=""> <input type="hidden" id="typeProbl2" size="0" name="myProblem" value=""> <td><label id= >Сенчилов В.А.</label></td><td><input type="time" id="id_time2" size="" name="timeproblem" value="15:29"></td><td><input type="text" id="id_contact2" size="" name="contactInfo" value=""></td><td><input type="textarea" id="id_problem2" size="" name="problemDescription" value=""></td><td><label id= >7017354603</label></td><td id='orgdata'><a href='#myModalBox' data-id= class='open-AddBookDialog' data-toggle='modal'><label id=idname >ООО «Салют»</label></a></td><td><select size = '1' name='problemstatus' ><option value='Решена'>Решена</option><option value='Не решена'>Не решена</option><option value='Удалить'>Удалить</option></select></td> <td><button type='submit' class='btn btn-primary btn-md'>Обновить</button></td></form></tr><tr id='idpag'><form method='POST' action='Tempdata.php' class='form-inline'><input type="hidden" id="ident3" size="0" name="id" value="568"> <input type="hidden" id="orgId" size="0" name="orgid" value=""> <input type="hidden" id="typeProbl3" size="0" name="myProblem" value=""> <td><label id= >Михайлов Т.Ш.</label></td><td><input type="time" id="id_time3" size="" name="timeproblem" value="14:38"></td><td><input type="text" id="id_contact3" size="" name="contactInfo" value=""></td><td><input type="textarea" id="id_problem3" size="" name="problemDescription" value="нет информации о новом ключе. Объяснил что нужно с"></td><td><label id= >7017354603</label></td><td id='orgdata'><a href='#myModalBox' data-id= class='open-AddBookDialog' data-toggle='modal'><label id=idname >ООО «Салют»</label></a></td><td><select size = '1' name='problemstatus' ><option value='Решена'>Решена</option><option value='Не решена'>Не решена</option><option value='Удалить'>Удалить</option></select></td> <td><button type='submit' class='btn btn-primary btn-md'>Обновить</button></td></form></tr> </tbody> </div> </table> </div> <div class="modal-footer"> <button type="button" class="btn btn-default" data-dismiss="modal">Закрыть</button> </div> </div> </div> </div> во вкладке ПОСТ PHP: orgid 5390 Далее щелкаю второй раз по той же ссылке прилетает тоже самое но окно открывается с инфой как надо, но не стабильно иногда может тупо черное окно открыться без кнопок без всего. Я не помню что за сайт был к сожалению Это с моим глючным скриптом. Для отладки использую firebug/ И там же в предпросмотре он реально мне таблицу отдает с данными , но она почему то не выводится. Если жмешь второй раз то тогда выводится уже.
поменяйте в моем коде $.get на $.post - заработает т.к. у вас в ajax.php $_POST, забыли там подправить на гет))
показывает id: Код (Javascript): $(document).on("click",".open-AddBookDialog",function(){ alert($(this).data('id')); });
да в моем скрипте он тоже работает, дело тут даже не в этом. Ощущение что он не может отобразить данные потому что в ответе там прямо то чтомне нужно передалось.