Могу ли я динамически менять элементы в jquery? - PullRequest
0 голосов
/ 04 декабря 2009

У меня есть следующий jquery.

$(function() {
$('div#slideshow').append('<img src="images/forsiden/grans_julebrus.jpg" /><img src="images/forsiden/cappelen_hippo.jpg" /><img src="images/forsiden/capplen_grandmarap.jpg" /><img src="images/forsiden/agm_peace.jpg" /><img src="images/forsiden/cappelein_aboriginee.jpg" />');
...
...

Я хочу добавить все изображения динамически с помощью php.

<?php echo $images; ?>

Есть ли способ сделать это?

Ответы [ 3 ]

1 голос
/ 04 декабря 2009

Если функция JS находится в своем собственном файле .js, то по умолчанию вы не можете внедрить код PHP внутри.

Один из способов сделать это - скрыть имена файлов в документе, используя скрытые поля ввода (или скрытые элементы div и т. Д.) И использовать jQuery для их получения, или вы можете использовать функции AJAX jQuery для запроса имен файлов из обработчика PHP. *

0 голосов
/ 04 декабря 2009

ОТКАЗ ОТ ОТВЕТСТВЕННОСТИ: Я забыл, как со временем писать код PHP, так что вам придется самим разобраться с этой частью.

Я бы написал JavaScript внутри PHP. Например:

echo "myImages = new Array();";

Затем вы создаете цикл for, который записывает это для каждой картинки

echo "myImages[".$i."] = ".$TheImageSrc;

Когда файл js загружен, Javascript может получить доступ к этому массиву и загрузить изображения из него через

var images = '';
for (var i=0;i<myImages.length;i++){
   images .= '<img src="'+myImages[i]+'" />';
}
$('div#slideshow').append(images);

Редактировать 1

Оптимизирована часть JS

0 голосов
/ 04 декабря 2009
$(function() {
$('div#slideshow').append("<?php echo $images; ?>");
});
...