Foxtable(狐表)用户栏目专家坐堂 → 筛选数据


  共有1766人关注过本帖树形打印复制链接

主题:筛选数据

帅哥哟,离线,有人找我吗?
zoyong
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:652 积分:7718 威望:0 精华:0 注册:2015/8/24 9:02:00
筛选数据  发帖心情 Post By:2018/8/13 20:58:00 [只看该作者]

Dim wb As New WeUI
wb.AddForm("","form1","tbList.htm")
Dim gjs As List(of String) = DataTables("投标立项").GetValues("资质")
With wb.AddInputGroup("form1","ipg1","数据筛选")
    .AddSelect("资质","资质","|" & String.Join("|",gjs.ToArray)).Attribute = ""  '调用js函数.
    .AddSelect("区域","区域","")
    .AddInput("startdate","开始日期","date")
    .AddInput("enddate","结束日期","date")
End With
With wb.AddButtonGroup("form1","btg1",True)
    .Add("btn1", "确定", "submit")
End With
    With wb.AddButtonGroup("","btg2", False)  '水平排列
            .Add("btnNext","返回经营管理","","jygl.htm").kind = 2
    End With
For Each gj As String In gjs
   ' 插入一些隐藏段落,用于存储各个资质的投标区域
    wb.InsertHTML("<p hidden id='" & gj & "'>" & DataTables("投标立项").GetComboListString("区域","资质='" & gj & "'") & "</p>")
Next
wb.AppendHTML("<script src='./weui/lib/brands.js'></script>") '引入脚本文件
e.WriteString(wb.Build) '生成网页

brands.js代码
//投标立项动态列表
function tbgetBrands(){
    var gj=document.getElementById("资质").value;
    setOptions("区域",document.getElementById(gj).innerHTML);
}

上面代码无效,会列出所有数据,用下面的代码就能查询,但是达不到我想要的效果,请老师指教

'Dim wb As New WeUI
'wb.AddForm("","form1","tbList.htm")
'Dim gjs As List(of String) = DataTables("投标立项").GetValues("资质")
'With wb.AddInputGroup("form1","ipg1","数据筛选")
    '.AddSelect("product","资质","|水利|市政|建筑")
    '.AddSelect("customer","区域","|台州|临海|县内")
    '.AddInput("startdate","开始日期","date")
    '.AddInput("enddate","结束日期","date")
'End With
'With wb.AddButtonGroup("form1","btg1",True)
    '.Add("btn1", "确定", "submit")
'End With
'With wb.AddButtonGroup("","btg2", False)  '水平排列
    '.Add("btnNext","返回经营管理","","jygl.htm").kind = 2
'End With
'e.WriteString(wb.Build) '生成网页

 回到顶部
帅哥哟,离线,有人找我吗?
zoyong
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:652 积分:7718 威望:0 精华:0 注册:2015/8/24 9:02:00
  发帖心情 Post By:2018/8/13 21:04:00 [只看该作者]

tblist.htm代码

Dim wb As New WeUI
Dim flt As String
If e.GetValues.ContainsKey("unfilter") Then '如果是取消筛选
    wb.ClearCookie() '清除Cookie
ElseIf e.PostValues.Count > 0
    flt = Functions.Execute("tbGetFilter",e, wb) '根据输入内容合成条件,注意WeUI也需要传递过去
Else
    flt = Functions.Execute("tbGetCookieFilter",e) '根据Cookie合成条件
End If
'获取要显示的页码
Dim page As Integer = 0 '默认page为0,显示第一页
Dim pageRows As Integer = Tables("微信参数").rows(0)("页面显示行数")     '每页显示行数,在微信参数表中修改
If e.GetValues.ContainsKey("page") Then  '如果地址中有page参数
    Integer.TryParse(e.GetValues("page"), page) '提取page参数
End If
Dim StartRow As Integer = page * pageRows + 1 '此页第一行
Dim EndRow As Integer = (page + 1) * pageRows '此页最后一行
'提取此页数据
Dim cmd As New SQLCommand
cmd.C '记得设置数据源名称
cmd.CommandText = "S elect Count(*) From {投标立项}"
If flt > "" Then
    cmd.CommandText = cmd.CommandText & " where " & flt
End If
Dim Count As Integer = cmd.ExecuteScalar() '获取总的行数
Dim Pages As Integer = Math.Ceiling(Count/PageRows) '计算出总页数
cmd.CommandText = "S elect * From (S elect Row_Number() Over(Order by 开标时间) As [NO],项目名称,区域,开标时间 From 投标立项"
If flt > "" Then
    cmd.CommandText = cmd.CommandText & " where " & flt
End If
cmd.CommandText = cmd.CommandText & ") As a "
cmd.CommandText = cmd.CommandText & "  Where [NO]>= " & StartRow & " And [NO] <= " & EndRow
'合成网页
With wb.AddTable("","Table1")
    .ActiveSheet = "menu" '指定菜单
    .CreateFromDataTable(cmd.ExecuteReader)
End With
With wb.AddButtonGroup("","btg2", False)
    If page > 0 Then
        .Add("btnFirst", "第一页","","tbList.htm?page=0").Kind = 0
        .Add("btnPrev", "上一页","","tbList.htm?page=" & page - 1).Kind = 0
    Else
        .Add("btnFirst", "第一页","button").Kind = 0
        .Add("btnPrev", "上一页","button").Kind = 0
    End If
    If Endrow < count Then
        .Add("btnNext", "下一页","","tbList.htm?page=" & page + 1).Kind = 0
        .Add("btnLast", "最末页","","tbList.htm?page=" & pages - 1).Kind = 0
    Else
        .Add("btnNext", "下一页","button").Kind = 0
        .Add("btnLast", "最末页","button").Kind = 0
    End If
End With
With wb.AddButtonGroup("","btg3", False)
     .Add("btnsx", "重新筛选","","tbfilter.htm").Kind = 2
     .Add("btnzy", "返回项目列表","","tblx.htm").Kind = 2
End With
With wb.AddActionSheet("","menu") '设计菜单
    If flt = "" Then
        .Add("mnuFilter", "数据筛选","tbfilter.htm")
    Else
        .Add("mnuUnFilter", "取消筛选","tbList.htm?unfilter=true")
    End If
    .Add("mnuStatistics", "数据统计","tbtongji.htm")
    .Add("mnuCancel","取消","",True)
End With
e.WriteString(wb.Build)

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:105926 积分:538693 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2018/8/13 21:28:00 [只看该作者]

要什么效果?怎么样才是达到效果?

 回到顶部
帅哥哟,离线,有人找我吗?
zoyong
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:652 积分:7718 威望:0 精华:0 注册:2015/8/24 9:02:00
  发帖心情 Post By:2018/8/14 9:36:00 [只看该作者]

上面的代码无法查询指定数据   而是显示所有数据的     动态列表选择可以用,就是不能根据列表里面的字段筛选数据

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/8/14 9:54:00 [只看该作者]

查询数据那里,加下面代码弹出值看看

 

msgbox(flt)

msgbox(cmd.CommandText)


 回到顶部
帅哥哟,离线,有人找我吗?
zoyong
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:652 积分:7718 威望:0 精华:0 注册:2015/8/24 9:02:00
  发帖心情 Post By:2018/8/14 14:21:00 [只看该作者]

老师帮忙看看什么原因

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:测试.rar


[此贴子已经被作者于2018/8/14 14:21:29编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/8/14 14:38:00 [只看该作者]

你给的例子太凌乱了,根本无法测试啊。

 

请上传正确的,可以正常测试的实例。

 

加入下面代码弹出什么?

 

msgbox(flt)

msgbox(cmd.CommandText)

[此贴子已经被作者于2018/8/14 14:38:07编辑过]

 回到顶部