>웹 프론트엔드 >JS 튜토리얼 >동적 페이징을 구현하기 위한 ajax +jtemplate에 대한 자세한 설명

동적 페이징을 구현하기 위한 ajax +jtemplate에 대한 자세한 설명

亚连
亚连원래의
2018-05-24 17:37:091883검색

jtemplate은 매우 강력한 JQuery 기반 템플릿 엔진 플러그인으로, 더 이상 JS를 사용하여 데이터 세트를 바인딩하는 것에 대해 걱정할 필요가 없습니다. 이 기사는 동적 페이징을 달성하기 위해 ajax + jtemplate을 공유합니다. 필요한 친구는 이 기사를 참조할 수 있습니다.

jtemplate은 JQuery 기반의 템플릿 엔진 플러그인이므로 더 이상 그럴 필요가 없습니다. JS를 사용하여 데이터 세트를 바인딩하는 것에 대해 걱정하십시오.

주요 아이디어는 텍스트 영역을 템플릿으로 복사하고, ajax로 json 데이터를 로드하고, 템플릿을 추가하고, 데이터를 바인딩하고, 업데이트하여 더 많은 이벤트를 로드하는 것입니다.

//加载更多

function fnLoad(data){
listData.Ajax.data.target_page=parseInt(data.currentPage)+1;
function addmore(){
listData.Ajax.load();
}
//动态变换加载更多标签
if(data.totalNums == 0){
$(“#loadOBj”).addClass(“font-disable”).html(“还没有录入数据!”).unbind(“click”);
}
if(data.hasNext){
$(“#loadOBj”).html(“加载更多”);
if(data.currentPage==1){
$(“#loadOBj”).bind(“click”,addmore);
}
}else{
$(“#loadOBj”).addClass(“font-disable”).html(“已经是最底端了!”).unbind(“click”);
}
}
//Ajaxcallback
function callBackList(data){
var nextHtml = $(‘#listTemplate').prop(“outerHTML”);
var $listObj = listPage==0? ‘#listObj' : ‘#listObj'+listPage;
var $nextListObj = ‘listObj'+(listPage+1);
$($listObj).setTemplateElement(‘listTemplate',null,{filter_data: false});
$($listObj).setParam(“imgDomain”, roomImgDomain);
$($listObj).processTemplate(data);
$($listObj).after($(‘<p></p>&#39;,{
id:$nextListObj,
class:&#39;list-wrap&#39;
})
);
$(‘#&#39;+$nextListObj).append(nextHtml);
listPage++;
var $firstH3 = $(“#listObj .view-box:first h3″);
$firstH3.next().show();
$firstH3.find(“span”).addClass(“h3-up”).removeClass(“h3-down”);
fnLoad(data);
}
});
}
//ajax
$Ajax.prototype.load = function(){
var _this = this;
$.ajax({
type: “post”,
url: _this.url,
dataType:&#39;json&#39;,
data: _this.data,
success: function(data){
if(_this.callBack){
_this.callBack(data, _this.id);
}else{
//console.log(“ajax未定义回调函数!”);
}
},
error:function(){
//console.log(“ajaxerror”);
}
});
}
 

//调用

function fnListAjax(){
this.Ajax = new $Ajax();
this.Ajax.url = “”;
this.Ajax.data = {};
}
var listData = new fnListAjax();
fnAjax();
function fnAjax(){
listData.Ajax.url = dataDomain+”/advert/detail.htm”;
listData.Ajax.data = {
code:&#39;index_web&#39;
};
listData.Ajax.callBack = fnCallBackView;
listData.Ajax.load();
};

위 내용은 모든 사람을 위해 정리한 내용입니다. 앞으로 모든 사람에게 도움이 되기를 바랍니다.

관련 기사:

요청 프로세스 중에 진행 상황을 표시하는 간단한 Ajax 구현

AJAX를 통해 백그라운드에서 정보를 가져와 테이블에 표시하는 jquery 구현 클래스

JQuery Ajax 테이블 테이블을 생성합니다

위 내용은 동적 페이징을 구현하기 위한 ajax +jtemplate에 대한 자세한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.