0

関数を持つこのjQueryスクリプトが.load()あり、このスクリプトは次の名前のファイルに保存されていますheader.php

$(document).ready(function() {
    $('.my-wrapper').find(".wrapper-area").append('<div class="loadergif"></div>').load("file001.php?key=XXXXXX", function() {
    $(this).find('.wrapper-area').remove('.loadergif');
    var $container = $('.list-wrap');

    $container.imagesLoaded( function(){
        $container.masonry({
        itemSelector : '.my-wrapper'
        });
    });
});

反対側では、 body.php という名前のファイルに次の PHP 変数があります。

while($row = mysql_fetch_array($result)){
    $Key = $row['key'];
    echo '<div class="wrapper-area">';
       //jQuery script will produce something here             
    echo '</div><!-- .wrapper-area -->';
}

ここでの問題は、PHP ファイルからその $Key を jQuery スクリプトの XXXXXX 部分にする方法です: ' file001.php?key=XXXXXX'

$Key は WHILE ループから動的に生成されることに注意してください。つまり、ループサイクルごとに異なる値になります。

前にありがとう

4

3 に答える 3

1

PHP で、次の行を置き換えます。

echo '<div class="wrapper-area">';

これについて:

echo '<div class="wrapper-area" data-key="'.$Key.'">';


jQuery で、次の行を置き換えます。

$('.my-wrapper').find(".wrapper-area").append('<div class="loadergif"></div>').load("file001.php?key=XXXXXX", function() {

これについて:

$('.my-wrapper').find(".wrapper-area").each(function() {
   $(this).append('<div class="loadergif"></div>').load("file001.php?key"+$(this).data('key'), function() {
    ...
    ...
}); //close the each() call
}); //close document.ready()
于 2012-12-07T16:17:47.187 に答える
0

あなたの質問は明確ではありませんが、ロードラインをこれに変更したいと思います-

.load("file001.php", {key:XXXXXX}, function() {
于 2012-12-07T16:14:45.860 に答える
0

ラッパーを構築するためにこれを試すことができます:

while ($row = mysql_fetch_assoc($result))
{

  echo '<div class="wrapper-area" data-key="' . $row['key'] . '">';

  // ...

}

そして、これはjQueryの場合:

$(function()
{

  $('.my-wrapper').find('.wrapper_area').each(function()
  {

    $(this).append('<div class="loadergif"></div>').load('file001.php?key=' + $(this).attr('data-key'), function()
    {
      // ...
    }
    )

  }
  )

}
)
于 2012-12-07T16:17:03.627 に答える