以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  动态列表  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=141180)

--  作者:yetle
--  发布时间:2019/9/23 16:06:00
--  动态列表
帮助关于
图片点击可在新窗口打开查看此主题相关图片如下:微信图片_20190923160334.png
图片点击可在新窗口打开查看
二:
设计步骤

1、在"d:\\web"目录下,建立一个子目录lib,在这个目录建立一个文本文件,文件名为"brands.js",文件内容为:

function getBrands(){
    var gj=document.getElementById("国家").value;
    setOptions("品牌",document.getElementById(gj).innerHTML);
}

2、HttpRequest事件代码:

Select Case e.Path
    Case "test.htm"
        Dim wb As New weui
        wb.AddForm("","form1","test.htm")
        Dim gjs As List(of String) = DataTables("汽车").GetValues("国家")
        With wb.AddInputGroup("form1","ipg1","动态列表")
            .AddSelect("国家","国家","|" & String.Join("|",gjs.ToArray)).Attribute = ""  \'调用js函数。
            .AddSelect("品牌","品牌","")
        End With
        With wb.AddButtonGroup("form1","btg1",True)
            .Add("btn1", "确定", "submit")
        End With
        For Each gj As String In gjs
            \'插入一些隐藏段落,用于存储各个国家的汽车品牌
            wb.InsertHTML("<p hidden id=\'" & gj & "\'>" & DataTables("汽车").GetComboListString("品牌","国家=\'" & gj & "\'") & "</p>")
        Next
        wb.AppendHTML("<script src=\'./lib/brands.js\'></script>") \'引入脚本文件
        e.WriteString(wb.Build) \'生成网页
End Select

设计的思路很简单,就是生成的网页中,插入一些隐藏的段落,段落id为国家名称,内容为该国家的汽车品牌:

<p hidden id=\'德国\'>奥迪|宝马|奔驰|大众|欧宝</p>
<p hidden id=\'日本\'>本田|丰田|雷克萨斯|讴歌|日产</p>
<p hidden id=\'中国\'>比亚迪|长城|吉利|奇瑞|荣威</p> 

当用户选择不同国家后,触发onchange事件,执行getBrand函数,自动找出对应的段落,从中提取出列表项目。



按照帮助添加“产品质量问题列表”表

加了js文件
function getBrands(){
    var gj=document.getElementById("类型").value;
    setOptions("问题描述",document.getElementById(gj).innerHTML);
}

写了代码:
Dim e As RequestEventArgs = args(0)
Select Case e.Path
    Case "qcch.htm"
        Dim wb As New weui


        wb.AddForm("","form1","qcch.htm")
        Dim gjs As List(of String) = DataTables("产品质量问题列表").GetValues("类别")
        With wb.AddInputGroup("form1","ipg1","请选择质量问题")
            .AddSelect("类别","类别","|" & String.Join("|",gjs.ToArray)).Attribute = ""  \'调用js函数.
            .AddSelect("问题描述","问题描述","")
        End With
        With wb.AddButtonGroup("form1","btg1",True)
            .Add("btn1", "确定", "submit")
        End With
        For Each gj As String In gjs
            \'插入一些隐藏段落,用于存储各个国家的汽车品牌
            wb.InsertHTML("<p hidden id=\'" & gj & "\'>" & DataTables("产品质量问题列表").GetComboListString("问题描述","类别=\'" & gj & "\'") & "</p>")

        Next
        
wb.AppendHTML("<script src=\'./js/brands.js\'></script>") \'引入脚本文件
        e.WriteString(wb.Build) \'生成网页

End Select


类别列表出来了,问题描述没得数据选,把 id的hidden属性去掉可以看到问题列表数据,是啥子原因

--  作者:有点蓝
--  发布时间:2019/9/23 16:24:00
--  
自己挖的坑。

类别不是类型

 var gj=document.getElementById("类型").value;

    .AddSelect("类别","类别","|" & String.Join("|",gjs.ToArray)).Attribute = ""  \'调用js函数.

--  作者:yetle
--  发布时间:2019/9/23 17:46:00
--  
这里是我搞错了,改了之后还是 不行呢
--  作者:有点蓝
--  发布时间:2019/9/23 20:17:00
--  
学会使用浏览器的开发者工具调试:https://www.baidu.com/baidu?word=开发者工具+调试