以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 筛选数据 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=123395) |
-- 作者:zoyong -- 发布时间: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 -- 发布时间: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) |
-- 作者:有点蓝 -- 发布时间:2018/8/13 21:28:00 -- 要什么效果?怎么样才是达到效果? |
-- 作者:zoyong -- 发布时间:2018/8/14 9:36:00 -- 上面的代码无法查询指定数据 而是显示所有数据的 动态列表选择可以用,就是不能根据列表里面的字段筛选数据 |
-- 作者:有点甜 -- 发布时间:2018/8/14 9:54:00 -- 查询数据那里,加下面代码弹出值看看
msgbox(flt) msgbox(cmd.CommandText) |
-- 作者:zoyong -- 发布时间:2018/8/14 14:21:00 -- 老师帮忙看看什么原因 [此贴子已经被作者于2018/8/14 14:21:29编辑过]
|
-- 作者:有点甜 -- 发布时间:2018/8/14 14:38:00 -- 你给的例子太凌乱了,根本无法测试啊。
请上传正确的,可以正常测试的实例。
加入下面代码弹出什么?
msgbox(flt) msgbox(cmd.CommandText) [此贴子已经被作者于2018/8/14 14:38:07编辑过]
|