「Load-about.php」というページからAJAXを使用してメインページにdivをプルしようとしています。私は tutsnet コースの「jQuery を学ぶ 30 日間」をフォローしてきましたが、CI を使用していて、それらのコースを適応させようとしているため、別のページからコンテンツを読み込もうとしているときに立ち往生しています。
だから私は私のメインページを持っています:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Load</title>
<link rel="stylesheet" href="<?php echo base_url('bootstrap/css/bootstrap.min.css'); ?>" >
<style>
</style>
</head>
<body>
<a href="<?php echo site_url('Ajax/lessonTwentyThree/Load-about'); ?>">Try to make AJAX working !</a>
</br>
<a href="<?php echo site_url('Ajax/lessonTwentyThree/Load-Contact'); ?>">Contact</a>
<div class="wrap"></div>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js"></script>
<script>
(function() {
var wrap = $('div.wrap');
$('a').on('click', function(e) {
var href = $(this).attr('href');
wrap.load(href +'.container' ) ;
e.preventDefault();
});
})();
</script>
</body>
</html>
要求されたビューのみを呼び出す非常に単純な CI コントローラーを呼び出しているだけで、リンクなしで作業しているときはすべて正常に機能していました。
しかし今、AJAX 呼び出しを使用する代わりに、ページにリダイレクトされます。なんで ?なぜ e.preventDefault(); は または false を返します。デフォルトのアクションへのリンクを妨げていませんか?
ありがとう
編集: Jai のおかげで、単純な昏睡というエラーが見つかりました。しかし、今、「GET http://www.localhost.com/CodeIgniterJQUERY/index.php/Ajax/lessonTwentyThree/Load-Contact.container 500 (Internal Server Error)」を取得しています
クラスを指定したかったので、問題は.containerに由来し、Ciはそれがパラメーターであるため理解しています。
コントローラーは次のとおりです。
class Ajax は CI_Controller を拡張します {
/**
* Nous allons ici nous occuper de toutes les fcts AJAX
*/
public function lessonTwentyThree($page)
{ // En fait, on a pas besoin de ca, on va directement loader la vue directement.
$this->load->view($page);
}
}
Load-Contact からメイン ページへの div を取得したいだけです。