0

こんにちは皆さん、私は簡単な問題を抱えています:

Code igniter でブログを作成しました。これが私のコードの外観です。

これは私の home_page コントローラです:

public function index()
    {
        $data['posts'] = $this->Model_cats->getLivePosts(7);
        $data['cats'] = $this->Model_cats->getTopCategories(); 
        $data['title'] = 'Welcome';
        $data['main'] = 'public_home';
        $data['main2'] = 'public_home_loadpost';
        $this->load->vars($data);
        $this->load->view('template', $data);
    }

そして、私はこのjqueryをロードに使用します:

$(window).scroll(function())
{
    if( $(window).scrollTop() == $(document).height() - $(window).height() ){
        $('div#loadMoreComments').show();

        $.ajax({
            url: "WHAT PAGE PUTHERE.php?lastComment=" + $(".postedComment:last").attr("id"),
            success: function(html){
                if(html)
                {
                    $("#postedComments").append(html);
                    $('div#loadMoreComments').hide();

                }
                else
                {
                    $('div#loadMoreComments').replaceWith("Finished Loading the comments");
                }
            }
        });
    }

jqueryファイルのURLにどのページを入れることができるのか本当にわかりません...より多くの投稿を取得するページです。助けてください

私の見解はこのように見えます

<?php

    if ( count($posts) )
    {
        foreach ($posts as $key => $list)
        {
            echo "<div class='postedComment'>";
            echo '<h2>'.$list['title'].'</h2>';
            echo auto_typography( word_limiter($list['body'], 200) );
            echo anchor('welcome/post/'.$list['id'],'read more >>');
            echo "</div>";
        }

        echo '<br/><br/>';
    }

?>

<div id='loadMoreComments' style="display:none;">hello</div>
4

1 に答える 1

0

コントローラーに別のビューを作成する必要があります。そのビューの URL は ajax 関数によって呼び出され、JSON 形式でデータを返します。

ajax の簡単な使用方法を次に示します。

非常に単純な ajax ビューの例 (コントローラー内):

public function ajax_get_current_date_time() {
    die(date('d-m-Y H:i:s'));
}

HTML:

<div>The current date and time: <b id="current_time"></b></div>

次に、フロントjsで:

$.ajax({
    url: "/controller/ajax_get_current_date_time",
    success: function(data){
        $('#current_time').html(data);
    }
});

あなたの状況では、JSON をより適切に使用できます。JSON を使用した ajax 呼び出しの例を次に示します。

$.ajax({
    url: "/controller/ajax_get_post",
    type: 'GET',
    data: 'lastComment=' + $(".postedComment:last").attr("id"),
    dataType: 'JSON',
    success: function(data){
        // trigger function that will transform the JSON data into HTML
        add_post(data);
    }
});

JSON 部分を参照してください。要求された URL は JSON を返す必要があります。JSON の詳細:クリック!

于 2013-02-15T10:24:40.413 に答える