首页  >  文章  >  web前端  >  react.js 翻页插件实例代码

react.js 翻页插件实例代码

高洛峰
高洛峰原创
2017-01-21 11:09:301074浏览

废话不多说了,下面给大家分享react.js翻页插件的代码,具体代码如下所示:

var
Page = React.createClass({
render:function()
{
//中间代码更新
var
totalRows = 
this.props.totalRows;
var
listRows = 
this.props.listRows;
var
nowPage = 
this.props.nowPage>0?this.props.nowPage:1;
var
firstRow = 
this.props.listRows*(this.props.nowPage-1);
var
totalPage = 
Math.ceil(totalRows/listRows);
var
show_count=this.props.show_count?this.props.show_count:5;
if((!totalPage)&&nowPage>totalPage)
{
this.props.nowPage=totalPage;
}
if(this.props.nowPage<1)
{
this.props.nowPage=1;
}
var
show_count_mid=show_count/2;
var
pages = [];
for(var
i=1;i<=show_count;i++)
{
var
page=0;
if(nowPage<=show_count_mid)
{
page
= i;
}
else if(nowPage+show_count_mid>totalPage)
{
page
= totalPage - 
show_count+i;
}
else
{
page
=nowPage-Math.ceil(show_count_mid)+i;
}
if(page>0&&page!=nowPage)
{
if(page<=totalPage)
{
pages.push(<li
onClick={this.props.onPagination.bind(this,page)}><a>{page}</a></li>);
}
}
else
{
pages.push(<li
className="active"><a>{page}</a></li>);
}
}
this.pagesbutton=pages;
return
(
this.props.totalRows>0?(
<ul
className="pagination">
<li><a>Total:{this.props.totalRows}
 {this.props.nowPage}/{Math.ceil(this.props.totalRows/this.props.listRows)}</a></li>
<li
onClick={this.props.onPagination.bind(this,1)}><a>firstpage</a></li>
<li
onClick={this.props.onPagination.bind(this,this.props.nowPage==1?1:this.props.nowPage-1)}><a
href="#none">«</a></li>
{this.pagesbutton}
<li
onClick={this.props.onPagination.bind(this,this.props.nowPage==this.props.totalPage?this.props.totalPage:this.props.nowPage+1)}>
<a
href="#none">»</a>
</li>
<li
onClick={this.props.onPagination.bind(this,Math.ceil(this.props.totalRows/this.props.listRows))}><a>lastpage</a></li>
</ul>
):(
<ul
className="pagination">
<li><a>No data</a></li>
</ul>
)
);
}
});

以上所述是小编给大家介绍的react.js 翻页插件实例代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对PHP中文网的支持!

更多react.js 翻页插件实例代码相关文章请关注PHP中文网!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn