layui中怎么在查询中获取日期选择器的值然后重载表格并加载选择的日期到表头

layui中怎么在查询中获取日期选择器的值然后重载表格并加载选择的日期到表头,第1张

//日期控件

laydaterender({

elem: '#startTime',

type: 'datetime',

});

//时间控件

laydaterender({

elem: '#endTime',

type: 'datetime',

});

datt();

function datt(){

$$("#startTime")val(startDate);

$$("#endTime")val(endDate);

}

js如下:

///<reference path="jquery-180minjs" />

//加载函数

$(function () {

    Nbookload();

});

var Nbook =

{

    load: function () {

        Nbookclci();

    },

    selectDat: function () {

        var val;

        $ajax({

            type: "post",

            dataType: "json",

            data: { "method": "selectData", "Name": "'" + $trim($("#Name")val())+"'" },

            url: "ashx/testashx",

            success: function (data) {

                if (data != null) {

                    var html = "";

                    val = eval(data);

                    //consolelog(booklength);

                    //for (var i = 0; i < booklength; i++) {

                    //    html += "<ul class='main_Ul'><li>" + book[i]name + "</li><li>" + book[i]sch_id + "</li><li>" + book[i]sex + "</li><li>" + book[i]isOk + "</li></ul>";

                    //}

                    //$("main")html(html);

                    layuiuse('table', function () {

                        var table = layuitable;

                        //展示已知数据

                        tablerender({

                            elem: '#socialList'

                            , cols: [[ //表头

                                { type: 'checkbox', fixed: 'left' },

                                { field: 'name', title: '姓名', sort: true, fixed: 'left', unresize: true, sort: true, totalRowText: '合计' }

                                , { field: 'sch_id', title: '学校ID', sort: true, totalRow: true }

                                , { field: 'sex', title: '性别', sort: true, totalRow: true }

                                , { field: 'isOk', title: '是否OK' }

                            ]],

                            data: val

                            , even: true

                            , page: true //是否显示分页

                            , toolbar: true //开启工具栏,此处显示默认图标,可以自定义模板,详见文档

                            , limits: [3, 5, 7, 8, 10, 50]

                            , limit: 8 //每页默认显示的数量

                            , cellMinWidth: 80

                            , height: 'full-515'//设置表格最大高度

                            , totalRow: true//开启合计

                        });

                    });

                }

            }

        });

    },

    clci: function ()

    {

        if ($trim($("#Name")val()) == "")

        {

            NbookselectDat();

        }

        $("input[type='button']")click(function () {

            NbookselectDat();

        });

    }

}

页面如下:

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="myselectaspxcs" Inherits="WebTestDemosmyselect" %>

<!DOCTYPE html>

<html xmlns=">

如上图所示,要扣除里面的表格数据,该怎么弄呢?思路是先把整个表格抠出来,然后按照tr进行分割,存到数组,然后一个个遍历进行正则匹配,最后输出结果转化为json格式,供前台调用!

<phpclass getHtmlChar {

var $url;    var $pattern_find;    var $pattern_replace;    var $timeout;    /

@param url 需要抓取的url链接

@param pattern_find 需要匹配的字段正则表达式

@param pattern_replace 需要替换的字符正则表达式

@param timeout 设置超时阻断程序执行,默认10秒,这个字段一般留空

/

function __construct($url, $pattern_find, $pattern_replace, $timeout) {

$this->url = $url;        $this->pattern_find = $pattern_find;        $this->pattern_replace = $pattern_replace;        $this->timeout = 10;

}    // 获取网页源代码

function getHtml() {

$ch = curl_init();

curl_setopt($ch, CURLOPT_URL, $this->url);

curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);

curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/50 (Windows NT 61; WOW64) AppleWebKit/53736 (KHTML, like Gecko) Chrome/3401847131 Safari/53736'); //模拟浏览器,防止被拦截

curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $this->timeout);        $html = curl_exec($ch);        // 匹配需要的大的字段,例如一段table,取出来之后再一行一行做匹配

preg_match($this->pattern_find, $html, $match);        //判断是否有传入替换的正则表达式,如果有就进行匹配替换,并返回替换后的字符串,如果没有,则直接返回匹配出来的大段,例如整个table表格

// echo "<pre>";

// print_r($match);

// echo "</pre>";

// exit;

if (!empty($this->pattern_replace)) {            return preg_replace($this->pattern_replace, '', $match[0]);

} else {            return $match[0];

}

}    // 传入正则和需要处理的字符串,返回的是匹配到的数组

function prgMatche($pre_all, $strs) {

if (!is_string($strs)) {            echo '传入的不是字符串!请检查!<br>';            echo "<pre>";

print_r($strs);            echo "</pre>";            exit;

}

preg_match_all($pre_all, $strs, $matches);        return $matches;

}    // 获取表格表头

function getTableJson() {

// 获取一行一行tr

$trs = $this->prgMatche('/<tr([\s\S]+)<\/tr>/i', $this->getHtml());        // 获取表头

$ths = $this->prgMatche('/<th>([\s\S]+)<\/th>/i', $trs[1][0]);        // 获取行数,循环匹配的时候需要用到

$num = sizeof($trs[1]);        // echo $num;

// 一行一行匹配表格数据

for ($i = 1; $i < $num; $i++) {            $tr = $this->prgMatche('/td>([\s\S]+)<\/td>/i', $trs[1][$i]);            $tds[] = $tr[1];

}        // 把表头和表数据存入json

array_unshift($tds, $ths[1]);        // 返回一个数组,0为json格式数据,1为数组格式数据

return [json_encode($tds), $tds];

}

}// 以下是调用这个类的例子$url = '>

以上就是关于layui中怎么在查询中获取日期选择器的值然后重载表格并加载选择的日期到表头全部的内容,包括:layui中怎么在查询中获取日期选择器的值然后重载表格并加载选择的日期到表头、c# layui 动态表格进行动态赋值、layui表格table怎么引入json读取表格数据显示等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://www.54852.com/web/9603129.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-30
下一篇2023-04-30

发表评论

登录后才能评论

评论列表(0条)

    保存