Simplistic jsFiddle Demo
Во-первых, вы должны перестроить свой HTML. Что-то вроде этого:
<div class="col-sm-3 no-side-padding-2">
<h2>Assistants</h2>
<div id="assistants-box" class="modal_box">
Contents of the ASSISTANTS box
</div>
</div>
Обратите внимание, что этикетка с возможностью клика (видимая) находится вне модального DIV.
Модальный DIV не является чем-то волшебным; это просто нормальный, скрытый DIV, который отображается (.show()
), а все остальное покрывается наложением. Как правило, свойство css z-index
используется для размещения надписи поверх содержимого и диалога поверх наложения. Это тривиально, чтобы сделать простой модальный диалог себя:
http://jsfiddle.net/07bvb5Lz/
При отображении модальной DIV, его DIV просто нескрываемым. Библиотеки, такие как Bootstrap и jQueryUI, могут автоматизировать эту простую задачу, а также добавить некоторое форматирование - внешнюю границу, центрирование и т. Д., Но содержимое DIV отображается при форматировании.
Чтобы ввести содержимое в модальное диалоговое окно, используйте метод .html()
или некоторые аналогичные. например, щелчок триггерного элемента (кнопка, div и т. д.) может запустить событие AJAX, которое запрашивает данные из поиска базы данных, форматирует его, а затем (в обратном вызове) вставляет его в модальный div непосредственно перед его отображением.
http://jsfiddle.net/07bvb5Lz/1/
Наконец, здесь это пост для получения основы AJAX - это действительно очень просто.
AJAX request callback using jQuery
Блочный код AJAX для приведенного выше примера будет выглядеть примерно так:
http://jsfiddle.net/07bvb5Lz/2/
Ваш файл процессора PHP (мы назвали его your_php_processor_file.php
) будет выглядеть примерно так:
<?php
$el = $_POST['elementID']; //value will be contents of js variable myId
//Do your mysql lookup using the received value
$mysql_recd = 'do_your_lookups_here';
if ($mysql_recd = 'bob'){
$tmp = 'http://placekitten.com/450/330';
}else{
$tmp = 'http://placekitten.com/450/320';
}
$out = '
<img src="' .$tmp. '" />
<input type="button" id="shutme" value="Close" />
';
echo $out;
?>
Я не уверен, где разместить этот код. Или где поставить data-toggle = "modal" data-target = "# myModal" –
Это путь 'html'. Вы должны поместить их на элемент, который хотите щелкнуть, чтобы открыть его. И замените '# myModal' идентификатором вашего модального. –
HI Stefan, который сработал. Когда я нажимаю на фотографию, мода появляется. У меня был еще один вопрос для вас. Когда модальный всплывает, я хочу, чтобы изображение появилось внутри него с помощью предыдущих и следующих кнопок. Например: http://fearlessflyer.com/next-and-previous-buttons-bootstrap-photo-gallery/ –