jQuery DataTables插件分页允许输入页码跳转

项目中使用jQuery DataTables插件来实现分页表格,但是默认的分页样式不能输入页码进行跳转,在页数非常多的时候使用很不方便,最主要的还是没有达到产品部门的设计要求,所以我需要寻找相应的解决方案。

原始效果图

目标效果图

方案分析

一开始,我在网上搜索到了相关资料。

【官方】Navigation with text input

这个是jQuery DataTables官方提供的插件,虽然实现了输入页码跳转的功能,但是和我目标效果不一致

CSDN】DataTables页码后面添加可输入页码跳转

这个方案是直接修改jquery.datatables.js的源码,在原有分页的后面添加输入框,然后在表格加载完成事件fnDrawCallback中为输入框添加事件。

本来,我想沿用官方的方式,单独写一个插件,这样不会污染DataTables插件原有代码,但是实在是水平有限,所以采用了CSDN直接修改插件代码的方式。

插入代码

注意:我使用的是DataTables 1.10.12版本,不同版本实现可能不同。

// START 2016-12-27添加,用于输入分页页码
$(".gotoPage").remove();
var pageHtml = "" +
        "到第" +
        "" +
        "" +
        "确认" +
        "";
$(pageHtml).appendTo(container);
// 对页码输入进行限制,只能输入数字
var sfn = function() {
    var value = $(this).val();
    if (value == '') {
        $(this).data("prev", $(this).val());
        return;
    }
    var max = $(this).attr("maxlength");
    if (value.length > max)
        $(this).val(value.slice(0, max));
    var regex = /^\d+$/;
    if (!regex.test(value)) {
        $(this).val($(this).data("prev"));
    }
    $(this).data("prev", $(this).val());
};
var testinput = document.createElement('input');     
if('oninput' in testinput){ 
    document.getElementById("textGotoPage").addEventListener("input", sfn, false); 
} else {
    $("#textGotoPage").onpropertychange = sfn; 
}
// 为确认按钮添加点击事件,执行分页跳转
$("#btnGotoPage").click(function(){
    var textGotoPage = $("#textGotoPage").val();
    if (textGotoPage == null || textGotoPage === '' || textGotoPage.match(/[^0-9]/)) {
        // 没有输入或者输入了非数字,清除非数字
        $("#textGotoPage").val(textGotoPage.replace(/[^\d]/g, ''));
        return;
    }
    if(parseInt(textGotoPage) > 0){
        var oSettings = settings;
        var iNewStart = oSettings._iDisplayLength * (textGotoPage - 1);
        if (iNewStart < 0) {
            iNewStart = 0;
        }
        if (iNewStart >= oSettings.fnRecordsDisplay()) {
            iNewStart = (Math.ceil((oSettings.fnRecordsDisplay()) / oSettings._iDisplayLength) - 1) * oSettings._iDisplayLength;
        }
        oSettings._iDisplayStart = iNewStart;
        _fnDraw(oSettings);
    }
});
// END

谢谢!

html5二三级菜单 html的二级菜单

这样类似的二级菜单用CSS和html怎么实现?

首先需要打开自己电脑上的DW软件,新建一个html页面,然后将其保存在桌面上。接下来我们需要在body里面添加DIV标签,并在其内使用ul无序列表和li标签制作一个一级菜单栏,代码和浏览器的效果如下面两张图片所示。

专注于为中小企业提供网站设计、网站建设服务,电脑端+手机端+微信端的三站合一,更高效的管理,为中小企业揭阳免费做网站提供优质的服务。我们立足成都,凝聚了一批互联网行业人才,有力地推动了近1000家企业的稳健成长,帮助中小企业通过网站建设实现规模扩充和转变。

制作下拉菜单有2种方法:使用jquery方法实现;实现方法:首先需要引入jquery的版本,引用toggle()的方法,点击当前的一级导航。用this方法来进行当前包含的二级菜单隐藏与显示。

使用HTML和CSS制作下拉菜单的方法如下:编写带有div导航的html代码:使用class=“nav”属性的‘div’标签作为菜单的容器。在截图中,在图示的HTML代码中,一个简单的无序列表(ul)来表示主菜单项。

这个不太好实现。标签的伪类focus可以很好的实现这种效果,但是在IE6下只支持a的伪类hover、active、visited、link。其他的标签在IE6下都没有伪类。所以建议用js,如果是闲来无事可以试一下。

html5怎么实现div+css二级下拉菜单

在网页上看到初步效果。添加JavaScript代码实现功能,hide()函数实现display的隐藏。在HTML代码中引用show()和hide()函数。CTR+S保存代码,在浏览器中F5刷新网页查看效果。

这个不太好实现。标签的伪类focus可以很好的实现这种效果,但是在IE6下只支持a的伪类hover、active、visited、link。其他的标签在IE6下都没有伪类。所以建议用js,如果是闲来无事可以试一下。

下拉菜单的制作方法,要CSS代码的。 可以出现二级菜单和三级菜单的。最好不要有javascript代码出现。... 可以出现二级菜单和三级菜单的。最好不要有javascript代码出现。

单纯用css肯定不能实现这种效果,需要用到jQuery,代码如下:然后再用css去修改样式就好。

也就是说,通过 class=animated 当做钩子,有 animated 这个 class 的时候,名为 aninode 的 div 元素或者其内部的元素才会执行相关的动画效果。动画效果的 CSS 样式在 core.js 里面。

这是我写的一个导航,你自己看吧。li并列应该定义其float属性为left。

css3级菜单怎么设置

1、.menu ul li a.hide, .menu ul li a:visited.hide {display:none;}//将元素隐藏、不保留其物理空间.menu ul li a:hover {color:#fff; background:#36f;}//设置鼠标悬停时链接的字体颜色。

2、XML/HTML Code Menu1 Menu2 Menu3 第二步:设置菜单的背景。在该步骤中,把导航的背景设置为黑色。宽度、高度和内边距为可选项,可以不设置。

3、将三个DIV放到一个大的DIV中。然后三个小DIV第一个用float:left;第二个用float:right;第三个不用float也不用position,只需要用margin-left:第一个div的宽度,margin-right:第二个div的宽度。

4、使用HTML和CSS制作下拉菜单的方法如下:编写带有div导航的html代码:使用class=“nav”属性的‘div’标签作为菜单的容器。在截图中,在图示的HTML代码中,一个简单的无序列表(ul)来表示主菜单项。

5、css没有办法实现美化select下拉框的。

6、下拉菜单的制作方法,要CSS代码的。 可以出现二级菜单和三级菜单的。最好不要有javascript代码出现。... 可以出现二级菜单和三级菜单的。最好不要有javascript代码出现。

分享标题:html5二三级菜单 html的二级菜单

URL网址:

本站内容来自用户投稿,如果侵犯了您的权利,请与我们联系删除。联系邮箱:835971066@qq.com

本文链接:http://news.xiuzhanwang.com/post/2823.html

友情链接: