0

Rotten Tomatoes API から参照 (Laravel Framework を使用) というページに表示される映画の順序付けられていないリストがあります。AJAX を使用して、ユーザーがアンカーをクリックしたときにムービーというルートとして設定した別のファイルからコンテンツを div にロードしようとしています。

Route::get('browse', array('as'=>'browse', 'uses'=>'browse@index')); Route::get('movie', array('as'=>'movie', 'uses'=>'browse@movie'));

/application/views/browse/index.blade.php にある参照ビュー

$movies = $search_results->movies;
echo '<div id="browse">';
echo '<ul class="movieResults">';
  foreach ($movies as $movie) {
    echo '<div class="movieCard">'; 
    echo '<li><img src="'. $movie->posters->detailed .'"</li>';
    echo '<li class="movieCardInfo"><a href="movie" class="movie">' . $movie->title . '</a></li>'; // HERE'S WHERE I HAVE THE PROBLEM
    echo '</div>';
  }
echo '</ul>';
echo '</div>';

/application/views/browse/movie.blade.php にあるムービー ビュー。今のところダミーテキストがあります

echo '<div class="details">';

エコー '

テスト

'; エコー '';

ブラウズコントローラー

public $restful = true;
  public function get_index() 
  {
    return View::make('browse.index')
    ->with('title', 'Browse Movies');
  }
}

Javascript ファイル $(function() { $('.movi​​e').click(function() { $('.details').load(this.href); return false; }); });

プロジェクトはここで見つけることができます

4

1 に答える 1

0

間違った「this」演算子を使用しているようです。jQuery スクリプトの場合、「$(this)」にする必要がありますか? (JavaScript の部分...)

また、「.load()」からの結果を「.details」に追加するように指示していますが、HTML コードにそのようなフィールドがあることがわかりませんか?

編集

/application/views/browse/index.blade.php で以下を変更します。

echo '<li class="movieCardInfo"><a href="movie" class="movie">' . $movie->title . '</a></li>';

echo '<li class="movieCardInfo"><a href="movie" class="movie">' . $movie->title . '</a><div class="details"></div></li>';

応答から「div.details」を削除すると、応答は詳細に必要なテキストのみを返します。

次に、JavaScript で:

$(function() { 
    $('.movie').click(function() {
        $('.details').load($(this).href);
        return false;
    });
});
于 2013-04-25T08:53:34.877 に答える