2011-01-20 1 views
1

У меня есть галерея продуктов, которые динамически создаются с использованием php и mysql при загрузке моей страницы htlml. Я должен взять все изображения в галерее и превратить их в ссылки, которые будут создавать модальное окно с содержимым, которое динамически генерируется в зависимости от того, какой продукт кликнут.Попытка обработки динамически созданных ссылок с помощью JS

Моя первая мысль - использовать JQuery для выбора всех продуктов, поместить <a><a/> вокруг каждого изображения и передать какой-то идентификатор моему php, который будет генерировать контент в модальном окне. этот мыслительный процесс правильный для того, чтобы попытаться достичь этого, или есть лучший способ взглянуть на выполнение этого. Может ли кто-нибудь предоставить некоторый пример кода, который я могу посмотреть на направление.

ответ

0

Да, то, что вы описываете, будет работать.

Однако, я хотел бы предложить вам создать в PHP оберточной <a href="javascript:void(0)"></a> и оставить JQuery, чтобы обрабатывать только кликах события, которые будут выглядеть примерно так:

$('a.product').click(function() { 
    $.get('/some/url.php', data: {id: 1234}, function (data) { 
     // Request is sent to /some/url.php?id=1234 
     // PHP responds with some HTML 
     // Output the HTML somewhere 
     $('#output').html(data); 
    }); 
}); 

Если вы используете библиотеку для модального , некоторые из них уже поддерживают загрузку содержимого AJAX, поэтому вам не нужен $.get, но вместо этого просто укажите URL и параметры запроса.

+0

Если вы динамически загружаете свои элементы, вы должны использовать '.live'. Если вы используете только «.click», то этот клик не будет привязан к какому-либо новому контенту. – hellatan

+0

@dtan, я понял, что ссылки, о которых идет речь в OP, находятся там на странице загрузки, а контент, загружаемый через AJAX, - это дополнительная информация, касающаяся ссылки, а не больше ссылок. –

+0

ссылки создаются при загрузке страницы. –