jQWidgets jqxGrid过滤属性

jQWidgets jqxGrid过滤属性

jQWidgets是一个JavaScript框架,用于为PC和移动设备制作基于Web的应用程序。它是一个非常强大的,优化的,与平台无关的,并且被广泛支持的框架。jqxGrid用来说明一个jQuery widget,以表格形式显示数据。此外,它完全支持与数据的连接,以及分页、分组、排序、过滤和编辑。

filter属性是一个回调函数,用于自定义过滤。它被用来覆盖内置的过滤功能。每当网格被过滤时,这个属性就会被调用。它渲染一个布尔类型的值或返回 “未定义”。它是函数类型的,其默认值是 “null”。

语法:

  • 设置filter属性。
$('Selector').jqxGrid({ filter: null });
  • 返回filter属性。
var filter = $('Selector').jqxGrid('filter');

该函数可容纳的值如下。

  • cellValue。它是单元格的现值。
  • rowData。它是一个JSON对象,持有当前行的数据。
  • dataField。它是过滤器列的数据字段。
  • filterGroup。它是所述过滤器的组。
  • defaultFilterResult。它是所述的过滤器的默认结果。

链接的文件:从给出的链接中下载jQWidgets。在HTML文件中,找到下载文件夹中的脚本文件。

<link rel=”stylesheet” href=”jqwidgets/styles/jqx.base.css” type=”text/css” />
<script type=”text/javascript” src=”scripts/jquery-1.11.1.min.js”></script>
<script type=”text/javascript” src=”jqwidgets/jqxcore.js”></script>
<script type=”text/javascript” src=”jqwidgets/jqx-all.js”></script>
<script type=”text/javascript” src=”jqwidgets/jqxdata.js”></script>
<script type=”text/javascript” src=”jqwidgets/jqxbuttons.js”></script>
<script type=”text/javascript” src=”jqwidgets/jqxscrollbar.js”></script>
<script type=”text/javascript” src=”jqwidgets/jqxmenu.js”></script>
<script type=”text/javascript” src=”jqwidgets/jqxgrid.js”></script>
<script type=”text/javascript” src=”jqwidgets/jqxgrid.selection.js”></script>

例子1:下面的例子说明了jQWidgets中jqxGrid filter属性。

<!DOCTYPE html>
<html lang="en">
  
<head>
    <link rel="stylesheet"
          href="jqwidgets/styles/jqx.base.css" 
          type="text/css" />
    <script type="text/javascript" 
            src="scripts/jquery-1.11.1.min.js">
    </script>
    <script type="text/javascript" 
            src="jqwidgets/jqxcore.js">
    </script>
    <script type="text/javascript" 
            src="jqwidgets/jqxdata.js">
    </script>
    <script type="text/javascript" 
            src="jqwidgets/jqxbuttons.js">
    </script>
    <script type="text/javascript" 
            src="jqwidgets/jqxscrollbar.js">
    </script>
    <script type="text/javascript" 
            src="jqwidgets/jqxmenu.js">
    </script>
    <script type="text/javascript" 
            src="jqwidgets/jqxgrid.js">
    </script>
    <script type="text/javascript" 
            src="jqwidgets/jqxgrid.selection.js">
    </script>
      <script type="text/javascript" 
            src="jqwidgets/jqxgrid.columnsresize.js">
    </script>
</head>
  
<body>
    <center>
        <h1 style="color: green">
            GeeksforGeeks
        </h1>
        <h3>
            jQWidgets jqxGrid filter property
        </h3><br />
        <div id="jqxg"></div>
        <div id="log"></div>
    </center>
  
    <script type="text/javascript">
        (document).ready(function () {
            var d = new Array();
            var subjectNames =
                ["C++", "Scala", "Java", "C", "R", "JavaScript"];
  
            var pageNumber =
                ["7", "8", "12", "11", "10", "19"];
  
            for (var j = 0; j<50; j++) {
                var r = {};
                r["subjectnames"] =
                    subjectNames[Math.floor(Math.random() * subjectNames.length)];
  
                r["pagenumber"] =
                    pageNumber[Math.floor(Math.random() * pageNumber.length)];
                d[j] = r;
  
            }
            var src = {
                localdata: d,
                datatype: "array",
            };
            var data_Adapter = new.jqx.dataAdapter(src);
            ("#jqxg").jqxGrid({
                source: data_Adapter,
                theme: 'energyblue',
                filterable: true,
                filter: function () {
                    ("#log").text("Filtered!")
                },
                height: "240px",
                width: "270px",
                columns: [
                    {
                        text: "Subject Name",
                        columntype: "textbox",
                        filtertype: "input",
                        datafield: "subjectnames",
                        width: "90px",
                    },
                    {
                        text: "Page No.",
                        datafield: "pagenumber",
                        filtertype: "checkedlist",
                        width: "90px",
                    },
                    {
                        text: "Exam",
                        datafield: "exam",
                        columntype: "checkbox",
                        filtertype: "bool",
                        width: "90px",
                    },
                ],
            });
        });
    </script>
</body>
</html>

输出:

jQWidgets jqxGrid过滤属性

例子2:下面是另一个例子,说明了jqxGrid filter 属性在jQWidgets中通过设置其值为 “null”。

<!DOCTYPE html>
<html lang="en">
  
<head>
    <link rel="stylesheet"
          href="jqwidgets/styles/jqx.base.css" 
          type="text/css" />
    <script type="text/javascript" 
            src="scripts/jquery-1.11.1.min.js">
    </script>
    <script type="text/javascript" 
            src="jqwidgets/jqxcore.js">
    </script>
    <script type="text/javascript" 
            src="jqwidgets/jqxdata.js">
    </script>
    <script type="text/javascript" 
            src="jqwidgets/jqxbuttons.js">
    </script>
    <script type="text/javascript" 
            src="jqwidgets/jqxscrollbar.js">
    </script>
    <script type="text/javascript" 
            src="jqwidgets/jqxmenu.js">
    </script>
    <script type="text/javascript" 
            src="jqwidgets/jqxgrid.js">
    </script>
    <script type="text/javascript" 
            src="jqwidgets/jqxgrid.selection.js">
    </script>
      <script type="text/javascript" 
            src="jqwidgets/jqxgrid.columnsresize.js">
    </script>
</head>
  
<body>
    <center>
        <h1 style="color: green">
            GeeksforGeeks
        </h1>
        <h3>
            jQWidgets jqxGrid filter property
        </h3><br />
        <div id="jqxg"></div>
        <div>
            <input type="button" 
                   id="jqxBtn"
                   style="margin-top:25px" 
                   value="Click here" />
        </div>
        <div id="log"></div>
    </center>
  
    <script type="text/javascript">
        (document).ready(function () {
            var d = new Array();
            var subjectNames =
                ["C++", "Scala", "Java", "C", "R", "JavaScript"];
  
            var pageNumber =
                ["7", "8", "12", "11", "10", "19"];
  
            for (var j = 0; j<50; j++) {
                var r = {};
                r["subjectnames"] =
                    subjectNames[Math.floor(Math.random() * subjectNames.length)];
  
                r["pagenumber"] =
                    pageNumber[Math.floor(Math.random() * pageNumber.length)];
                d[j] = r;
  
            }
            var src = {
                localdata: d,
                datatype: "array",
            };
            var data_Adapter = new.jqx.dataAdapter(src);
            ("#jqxg").jqxGrid({
                source: data_Adapter,
                theme: 'energyblue',
                filterable: true,
                filter: null,
                height: "240px",
                width: "270px",
                columns: [
                    {
                        text: "Subject Name",
                        columntype: "textbox",
                        filtertype: "input",
                        datafield: "subjectnames",
                        width: "90px",
                    },
                    {
                        text: "Page No.",
                        datafield: "pagenumber",
                        filtertype: "checkedlist",
                        width: "90px",
                    },
                    {
                        text: "Exam",
                        datafield: "exam",
                        columntype: "checkbox",
                        filtertype: "bool",
                        width: "90px",
                    },
                ],
            });
  
            ("#jqxBtn").jqxButton({
                width: "180px",
                height: "30px",
            });
            ("#jqxBtn").on("click", function () {
                var f =('#jqxg').jqxGrid('filter');
                $("#log").text(f)
            });
        });
    </script>
</body>
</html>

输出:

jQWidgets jqxGrid过滤属性

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程