❶ 分頁列印網頁怎麼做js或者jquery
用法:
$("div#printmain").printArea();
但還是會列印後面的內容,這里可以使用CSS控制列印分頁
<div style="page-break-after: always;"></div>
有時用CSS控制分頁了但還是會連續列印頁面,這里就可以用上PrintArea 插件中的屬性參數。
PrintArea部分源碼:
var modes = { iframe : "iframe", popup : "popup" };
var defaults = { mode : modes.iframe,
popHt : 800,
popWd : 800,
popX : 200,
popY : 200,
popTitle : '',
popClose : false ,
twoDiv : '', //自已擴展的屬性,為滿足變態需求
pageTitle: ''};//自已擴展的屬性,為滿足變態需求
可以看出插件中定義的屬性格式為JSON,下面介紹部分屬性
modes定義了兩個屬性,指定popup時會打開新窗口,可以視為列印預覽頁面,默認為iframe。
@popClose | [boolean] | (false),true 列印完成後是否開閉預覽頁面,默認為false(不關閉)。
$("div#printmain").printArea({mode:"popup",popClose:true});
這樣就可以指定DIV列印了。
下面說一下我新增兩個屬性的用途
twoDiv:
需要列印的第二個DIV ,當然會是第二頁,這個頁面比較長,需要自動分頁,並且表格中每行都不一樣,有些行跨了多行,這里列印出來,一行可能會列印在兩張紙上。
pageTitle:
第二個DIV分成多頁里,每一頁的表頭都需要一樣,這個參數就是公用表頭。
這兩個參數都對應著頁面中的DIV,如:
<div id="pageTitle" style="display: none;">
頁面定義好後,我們看看插件中是如何處理我們的頁面的。
writeDoc.open();
writeDoc.write(html); //打找一個窗口關寫窗口中的HTML代碼
writeDoc.close();
printWindow.focus();
printWindow.print();
下面是生成html的代碼
html+=docType() + "<html>" + getHead() + getBody(thisPage) + "</html>";
插件中都定義了相義的方法,我沒有做任何修改,這里我就不粘貼了。
下面是我的思路:
需在將一個DIV中的內容分成多頁,且一行不跨多頁,我們就得在生成html 代碼上下功夫了。
首先找出DIV中的所有行,當公共表頭加上這些行後高度達到一頁,就需要分頁了,這里就有可以一頁中最後一行剛好跨了多頁,將這一行保存下來,放到下一頁。
每一頁生成完成後都需要在HTML標簽後面加上CSS分頁標記,這樣就列印機就會乖乖的分頁。
說明一下,生成的預覽頁面一頁就是一個HTML頁面,它有對應的表頭與DTD信息。
有人可能明明預覽只有4頁,而列印出來總會多一頁,這時你需要檢驗一下你生成的頁面中分頁標記是不是在HTML標簽之前。
分面標記一定要在HTML標簽之後,這樣可解決列印多打一頁問題。
❷ 如何讓JS 做的上一頁 下一頁 局部刷新啊,求解!!代碼如下
你好, 樓主,我也是前兩天才寫過類似的例子, 也是實現分頁效果的
我的操作:
1、首先建兩個層、一個存放顯示數據、另一個存放分頁的那幾個按鈕
2、寫一個js方法,比如說是DataLoad(). 然後利用ajax去操作資料庫並通過json返回對象。然後在拼裝html, 最後將拼裝好的html代碼動態追加到數據顯示層中,
3、分頁操作 。 全局定義一個page 和pagesize 變數, 你點擊各種分頁操作的時候改變page值。 然後將數據顯示層中的內容全部刪除, 再調用一次DataLoad()方法就行了 。
這樣就能實現無刷新頁面分頁操作
❸ slick.js jquery分頁custompaging怎麼用
源代碼裡面有一個默認設置,大概是這么用的
❹ 請問如何用jquery 實現html頁面的分頁查詢
首先你需要一個pageBean類,用來定義一些分頁需要的數據!
public class PageBean<T> {
private int pageCount = 0; // 總頁數
private List<T> pageData = null; // 當前頁數據集
private int pageSize = 10; // 每頁大小
private int currentPage = 1; // 當前頁
private long totalRecord = 0; // 總記錄數
private int beginIndex = 0; // 分頁起始記錄號
private int endIndex = 1; // 分頁結束記錄號
public int getPageCount() {
pageCount = (int)(totalRecord + pageSize -1)/pageSize;
return pageCount;
}
public void setPageCount(int pageCount) {
this.pageCount = pageCount;
}
public List<T> getPageData() {
return pageData;
}
public void setPageData(List<T> pageData) {
this.pageData = pageData;
}
public int getPageSize() {
return pageSize;
}
public void setPageSize(int pageSize) {
this.pageSize = pageSize;
}
public int getCurrentPage() {
if (currentPage < 1) {
currentPage = 1;
}
return currentPage;
}
public void setCurrentPage(int currentPage) {
this.currentPage = currentPage;
}
public long getTotalRecord() {
if (totalRecord < 0) {
totalRecord = 0;
}
return totalRecord;
}
public void setTotalRecord(long totalRecord) {
this.totalRecord = totalRecord;
}
public int getBeginIndex() {
beginIndex = (currentPage - 1) * pageSize+1;
return beginIndex;
}
public void setBeginIndex(int beginIndex) {
this.beginIndex = beginIndex;
}
public int getEndIndex() {
endIndex = currentPage * pageSize;
return endIndex;
}
public void setEndIndex(int endIndex) {
this.endIndex = endIndex;
}
}
頁面上,使用jQuery的Ajax發送後台請求信息:
$.ajax({
type:"post",
url:"requestPage",
dataType:"json",
data:{這里就是封裝數據的地方,比如你要到第二頁的時候,在這之前要讀取當前的頁數,並進行適當的判斷,是鍵值對的形式例如:"current":1,"pageSize":10},
success:function(data){
這里是返回json字元串
var jsonObj=$(data);
然後解析遍歷json
$.each(data.pageData,function(index,item){
這個回調函數裡面的第一個參數是下標,第二個參數是集合裡面的單個對象
然後生成顯示…………結束
});
}
}):
❺ jquery怎麼動態實現表格分頁
jquery動態實現表格分頁的方法是利用自帶的分頁插件jQuery.page.js。
下面是使用方法:
$(".tcdPageCode").createPage({
pageCount:10,
current:1,
backFn:function(p){
//單擊回調方法,p是當前頁碼
}
});
pageCount:總頁數
current:當前頁
實現分頁的tab如下:
<div class="tcdPageCode">
<span class="disabled">上一頁</span>
<span class="current">1</span>
<a href="javascript:;" class="tcdNumber">2</a>
<a href="javascript:;" class="tcdNumber">3</a>
<a href="javascript:;" class="tcdNumber">4</a>
<span>...</span>
<a href="javascript:;" class="tcdNumber">6</a><a href="javascript:;" class="nextPage">下一頁</a></div>
實現效果:
❻ jquery動態怎麼實現表格分頁
<!DOCTYPEhtml>
<htmllang="en">
<head>
<metacharset="UTF-8">
<metaname="viewport"content="width=device-width,initial-scale=1.0">
<metahttp-equiv="X-UA-Compatible"content="ie=edge">
<title>Document</title>
</head>
<body>
<table>
<tr>
<th>1</th>
<th>2</th>
<th>3</th>
<th>4</th>
</tr>
</table>
<tableid="result">
<tr>
<td>1</td>
<td>2</td>
<td>3</td>
<td>4</td>
</tr>
<tr>
<td>1</td>
<td>2</td>
<td>3</td>
<td>4</td>
</tr>
<tr>
<td>1</td>
<td>2</td>
<td>3</td>
<td>4</td>
</tr>
<tr>
<td>1</td>
<td>2</td>
<td>3</td>
<td>4</td>
</tr>
</table>
<divid="barcon"></div>
<script>
window.onload=function(){
goPage(1)
}
functiongoPage(pno){
varitable=document.getElementById("result");
varnum=itable.rows.length;//表格所有行數(所有記錄數)
console.log(num);
vartotalPage=0;//總頁數
varpageSize=3;//每頁顯示行數
//總共分幾頁
if(num/pageSize>parseInt(num/pageSize)){
totalPage=parseInt(num/pageSize)+1;
}else{
totalPage=parseInt(num/pageSize);
}
varcurrentPage=pno;//當前頁數
varstartRow=(currentPage-1)*pageSize+1;//開始顯示的行31
varendRow=currentPage*pageSize;//結束顯示的行40
endRow=(endRow>num)?num:endRow;//40
//遍歷顯示數據實現分頁
for(vari=1;i<(num+1);i++){
varirow=itable.rows[i-1];
if(i>=startRow&&i<=endRow){
irow.style.display="table-row";
}else{
irow.style.display="none";
}
}
varpageEnd=document.getElementById("pageEnd");
vartempStr="<span>共"+totalPage+"頁</span>";
if(currentPage>1){
tempStr+="<spanclass='btnspanbtn'href="#"onClick="goPage("+(1)+")">首頁</span>";
tempStr+="<spanclass='btnspanbtn'href="#"onClick="goPage("+(currentPage-1)+")">上一頁</span>"
}else{
tempStr+="<spanclass='btnspanbtn'>首頁</span>";
tempStr+="<spanclass='btnspanbtn'>上一頁</span>";
}
if(totalPage==1){
tempStr+="<aonclick="goPage("+currentPage+")"><spanclass='spanbtnnowpagepageicon'>"+currentPage+
"</span></a>"
}elseif(totalPage==2&¤tPage==1){
tempStr+="<aonclick="goPage("+currentPage+")"><spanclass='spanbtnpageiconnowpage'>"+currentPage+
"</span></a>"+"<aonclick="goPage("+(currentPage+1)+")"><spanclass='spanbtnpageicon'>"+
(currentPage+1)+"</span></a>"
}elseif(totalPage==2&¤tPage==2){
tempStr+="<aonclick="goPage("+(currentPage-1)+")"><spanclass='spanbtnpageicon'>"+(currentPage-
1)+"</span></a>"+"<aonclick="goPage("+currentPage+")"><spanclass='spanbtnnowpagepageicon'>"+
currentPage+"</span></a>"
}elseif(totalPage>=3&¤tPage==1){
tempStr+="<aonclick="goPage("+currentPage+")"><spanclass='spanbtnnowpagepageicon'>"+currentPage+
"</span></a>"+"<aonclick="goPage("+(currentPage+1)+")"><spanclass='spanbtnpageicon'>"+
(currentPage+1)+
"</span></a>"+"<aonclick="goPage("+(currentPage+2)+")"><spanclass='spanbtnpageicon'>"+(
currentPage+2)+
"</span></a>"
}elseif(totalPage>=3&¤tPage==totalPage){
tempStr+="<aonclick="goPage("+(currentPage-2)+")"><spanclass='spanbtnpageicon'>"+(currentPage-
2)+
"</span></a>"+"<aonclick="goPage("+(currentPage-1)+")"><spanclass='spanbtnpageicon'>"+
(currentPage-1)+
"</span></a>"+"<aonclick="goPage("+currentPage+")"><spanclass='spanbtnnowpagepageicon'>"+
currentPage+
"</span></a>"
}else{
tempStr+="<aonclick="goPage("+(currentPage-1)+")"><spanclass='spanbtnpageicon'>"+(currentPage-
1)+
"</span></a>"+"<aonclick="goPage("+currentPage+")"><spanclass='spanbtnnowpagepageicon'>"+
currentPage+
"</span></a>"+"<aonclick="goPage("+(currentPage+1)+")"><spanclass='spanbtnpageicon'>"+(
currentPage+1)+
"</span></a>"
}
if(currentPage<totalPage){
tempStr+="<spanclass='btnspanbtn'href="#"onClick="goPage("+(currentPage+1)+")">下一頁</span>";
tempStr+="<spanclass='btnspanbtn'href="#"onClick="goPage("+(totalPage)+")">尾頁</span>";
}else{
tempStr+="<spanclass='btnspanbtn'>下一頁</span>";
tempStr+="<spanclass='btnspanbtn'>尾頁</span>";
}
document.getElementById("barcon").innerHTML=tempStr;
}
</script>
</body>
</html>
自己修改一下table中元素的CSS樣式,分頁頁碼的樣式,就能看出來效果了