私はCMSとしてmagentoを使用しており、ページネーションのためにajaxを実装しようとしています。
現在2ページありますが、構造はこんな感じです、
<div class="pager">
<div class="pages">
<strong>Page:</strong>
<ol>
<li class="current">1</li>
<li>
<a href="http://localhost/Bakestore/index.php/tools.html?p=2" class="pageLinks">2</a></li>
<li class="pager_next_img">
<a class="next i-next pageLinks" href="http://localhost/Bakestore/index.php/tools.html?p=2" title="Next">
<img src="http://localhost/Bakestore/skin/frontend/default/Bakestore_Theme/images/pager_arrow_right.gif" alt="Next" class="v-middle">
</a>
</li>
</ol>
</div>
</div>
私のjQueryajaxコードは次のとおりです。
$j(".pages li a").each(function(){
$j(this).removeClass('pageLinks').addClass('pageLinks');
});
$j(".pageLinks").click(function(e){
e.preventDefault();
var anchorSel = $j(this).attr('href');
$j.ajax({
type: "POST",
datatype: "HTML",
cache: true,
url: anchorSel,
success: function(data){
var testdata = $j(data).find(".category-products");
$j(".col-main .category-products").replaceWith(testdata);
},
complete: function(data){
$j(".pages li a").each(function(){
$j(this).removeClass('pageLinks').addClass('pageLinks'); });
alert($j(".col-main .category-products .toolbar > .pager").html());
}
});
クリックすると正常に動作しますPage 2
が、2ページ目からPage 1
を押すとページがリロードされます。今、私がPage 2
もう一度打つとき、それはうまくいきます。
jQueryをデバッグしましたが、残念ながら、イベント$j(".pageLinks").click
はまったく発生しません(をクリックしたときPage 1
)。
私がどこで間違っているのか考えていますか?