0

これは私にとっては少し複雑です。私はまだ初心者です笑。次のコード ブロックを検討してください。PHP ブロックをループし、新しいフィードをいくつかの div に追加する Jquery の Ajax。この場合、PHP は複数の結果を返します。例として、「名前」と「スローガン」が返されます。ajaxが結果を受け取った後、次をテンプレートとして追加したいのですが、このテンプレートが追加されるたびに変更されるため、phpが変数になります。これがhtmlテンプレートです。

<div id="BuzFeedResult1">
<?php 
require_once 'php/db_conx.php';
$Result = mysql_query("SELECT * FROM profiles ORDER BY lastupdated DESC LIMIT 1") or  die (mysql_error());
while($row = mysql_fetch_array($Result))
{ ?>
          <div id="ProfileDiv">
            <div>
            <span class="flat-menu-button"><?php echo $row['name'];?></span>
            <span class="flat-menu-button"><?php echo $row['slogan'];?>
            </span>

<?php 
}?>
            </span>
            </div>
            </div>
    </div>

質問。上記のテンプレートをこの div 内の ajax に取得するにはどうすればよいですか。

var $buzfeedresults = $("<div id='BuzFeedResult" + counter + "'></div>");

次に、次のように「div」を追加します。

var get_fb = (function() {
    var counter = 0;

    var $buzfeed = $('#BuzFeed');

    return function(){
        $.ajax({

        type: "POST",

        url: "../php/TopBusinesses_Algorythm.php"

     }).done(function(feedback) {

          counter += 1;

          //Divs being appended.

          var $buzfeedresults = $("<div id='BuzFeedResult" + counter + "'></div>");

          $buzfeedresults.text(feedback);

          $buzfeed.append($buzfeedresults);

          var $buzfeedDivs = $buzfeed.children('div');

          if ($buzfeedDivs.length > 10) { $buzfeedDivs.last().remove(); }

          setTimeout(get_fb, 4000);

    }).fail(function(jqXhr, textStatus, errorThrown) {

         var $buzfeedresults = $("<div id='BuzFeedError'></div>");

         $buzfeedresults.text('Error: ' + textStatus);

         if (typeof console !== 'undefined') {

         console.error(jqXhr, textStatus, errorThrown);
       }

   });

   };

   })();

   get_fb()

この質問は不明確に聞こえるかもしれませんが、必要に応じて明確にするよう求めてください。Json をよりすっきりと短くできる場合は、使用できる構造を提案してください。

4

2 に答える 2

1

応答を伴うsplit()関数でそれを行うことができます。

var response = "yes|||insert a title...and something more!"
var splitResult=response.split("|||");  
var yesNo=splitResult[0];  
var article=splitResult[1];
alert(yesNo+article);
于 2013-10-24T06:32:53.657 に答える