以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  i企业微信动态列表  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=144028)

--  作者:benwong2019
--  发布时间:2019/12/9 10:24:00
--  i企业微信动态列表
在企业微信页面中设备动态列表,公司区域可以正常获取,但部门的没有办法,请问是代码哪里的问题?

Case "Order.htm"
        wb.AddForm("","form1","Order.htm")
        Dim gjs As List(of String) = DataTables("Depts").SQLGetValues("Company")
        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
        For Each gj As String In gjs
            wb.InsertHTML("<p hidden id=\'" & gj & "\'>" & DataTables("Depts").SQLGetComboListString("DeptName","Company=\'" & gj & "\'") & "</p>")
        Next
        wb.AppendHTML("<script src=\'./lib/brands.js\'></script>") \'引入脚本文件
        e.WriteString(wb.Build) \'生成网页

Brands.js
function getBrands(){
    var gj=document.getElementById("公司区域").value;
    setOptions("部门",document.getElementById(gj).innerHTML);
}

--  作者:有点蓝
--  发布时间:2019/12/9 10:53:00
--  
function getBrands(){
    var gj=document.getElementById("公司区域").value;
alert(gj); //提示什么
alert(document.getElementById(gj).innerHTML);//提示什么
    setOptions("部门",document.getElementById(gj).innerHTML);
}

--  作者:benwong2013
--  发布时间:2019/12/9 11:35:00
--  
客户端操作,服务端没有提示
--  作者:有点蓝
--  发布时间:2019/12/9 11:49:00
--  
2楼这个提示是在客户端弹出的,客户端有没有弹出?弹出什么内容
--  作者:benwong2013
--  发布时间:2019/12/9 12:02:00
--  
公司区域的能获取到正常的列表,部门的获取不了,显示是空白的,在客户端和服务端都没有提示;
--  作者:有点蓝
--  发布时间:2019/12/9 13:37:00
--  
安装微信开发者工具,打开这个页面看提示什么错误?js文件是否能够正常加载?js文件如果是使用记事本编辑的,另存为utf8格式文件试试

这里具体是怎么调用js的?
.AddSelect("公司区域","公司区域","|" & String.Join("|",gjs.ToArray)).Attribute = ""  \'调用js函数.

--  作者:benwong2019
--  发布时间:2019/12/9 13:55:00
--  
 我修改为这样的函数之后,第一次可以,但在同一界面再次选择的话就不行了
Case "order.htm"
        wb.AddForm("","form1","order.htm")
        With wb.AddInputGroup("form1","ipg1","采购查询")
            With .AddSelect("公司区域","公司区域","|" & DataTables("Depts").SQLGetComboListString("Company"))
                .Attribute = """
            End With
            .AddSelect("部门","部门","")
        End With
        With wb.AddButtonGroup("form1","btg1",True)
            .Add("btn1", "确定", "submit")
        End With
        e.WriteString(wb.Build) \'生成网页
    Case  "getBrands.htm"
        Dim pps As String = DataTables("Depts").SQLGetComboListString("DeptName","Company =\'" & e.PostValues("公司区域") & "\' And DeptClasses = \'B\'")
        e.WriteString(pps)
        e.WriteString(wb.Build) \'生成网页


--  作者:有点蓝
--  发布时间:2019/12/9 14:23:00
--  
请上传实例说明
--  作者:benwong2019
--  发布时间:2019/12/9 14:24:00
--  
调取函数没有问题,就是选择之后部门栏位未能取到函数的结果;


图片点击可在新窗口打开查看此主题相关图片如下:qq截图20191209142239.png
图片点击可在新窗口打开查看

--  作者:benwong2019
--  发布时间:2019/12/9 14:39:00
--  
Consloe:
order.htm:19 Uncaught ReferenceError: getBrands is not defined
    at HTMLSelectElement.onchange (order.htm:19)