2017-09-14 10 views
0

私のホームページに最新のニュース記事を読み込んでいます。次のボタンをクリックすると次のページが読み込まれます。しかし、私はクリックするとこのエラーが発生します:home.php:353 Uncaught ReferenceError:nextNewsが定義されていません。私が書いたコードは、別の記事をロードするが、前のものを隠すことはない。これに対する提案も歓迎されます。Ajax PHPのループで次のデータをロードするリクエスト

<script> 

$(document).ready(function() { 
    var newsCount = 1; 
    function nextNews(item){ 
     newsCount = newsCount + 1; 
     $("#newsHome2").load("load-news.php", { 
      newsNewCount: newsCount 
     }); 
     } 
    }); 

</script> 

<?php 

     $query = $handler->query('SELECT * FROM articles LIMIT 1'); 
     $results = $query->fetchAll(PDO::FETCH_ASSOC); 
     if ($_GET['sort'] == 'dateTime') 
     { 
      $sql = " ORDER BY dateTime";} 
     for ($i=0; $i < count($results); $i++) { 

     echo '<div class="col-lg-6 col-xs-12 col-sm-12  height-news82" id="newsHome2">'; 
     echo '<h2 class="ashu">Lastest News</h2><br>'; 
     echo '<p class="news-title78">'.$results[$i]['headline'].'  <br>'.'</p>'; 
     echo '<img class="news-img33" src="data:image/png;base64,'  .base64_encode($results[$i]['logo']).'"/>'; 
     echo '<p class="news-time">'.$results[$i]['dateTime'].'<  br>'.'</p>'; 
     echo '<p class="news-body56">'.$results[$i]['text'].'</p>'  ; 
       echo '</p><br><a href="news.php"><button  id="solo-buttons67">Read More</button></a>'; 
     echo '<i id="arrow20" class="fa fa-chevron-left fa-1x"></  i><i id="arrow21" onclick="nextNews(this)" class="fa  fa-chevron-right fa-1x"></i></div>'; 
    } 
?> 

答えて

0

あなたの関数 'nextNews'は、.ready()に渡される無名関数で定義されています。だからあなたのhtmlで呼び出すことはできません。

オルタナティブ:

  • 使用jqueryのclick event
  • 機能を定義する匿名関数の外
0

view.phpその作業罰金:)

ビューファイルこのエクササイズを試してみてください

<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.2.1/jquery.js"></script> 

<div id="newsHome2"></div> 

<script type="text/javascript"> 

var newsCount = 1; 

$(document).ready(function() { 
    nextNews(newsCount) 
}); 

function nextNews(newsCount){ 
     newsCount = newsCount + 1; 
     $.post("load-news.php", { newsNewCount: newsCount }, function(data, status){ 
     $("#newsHome2").html(data); 
     }); 
} 
</script> 

のphpファイルのロードnews.php

<?php 

if(isset($_POST['newsNewCount'])) { $newsCount=$_POST['newsNewCount']; } else { $newsCount=1; } 

echo '<div class="col-lg-6 col-xs-12 col-sm-12  height-news82" id="newsHome2">'; 
echo '<h2 class="ashu">Lastest News</h2><br>'; 
echo '<p class="news-title78">headline '.$newsCount.' <br>'.'</p>'; 
echo '<img class="news-img33" src="data:image/png;base64,"/>'; 
echo '<p class="news-time">dateTime '.$newsCount.'<  br>'.'</p>'; 
echo '<p class="news-body56">text '.$newsCount.'</p>'  ; 
echo '</p><br><a href="#"><button  id="solo-buttons67">Read More '.$newsCount.'</button></a>'; 
echo '<i id="arrow20" class="fa fa-chevron-left fa-1x"></  i><i id="arrow21" onclick="nextNews('.$newsCount.')" class="fa  fa-chevron-right fa-1x"> click here for next </i></div>'; 


?> 
+0

助けてくれてありがとう。 –

関連する問題