Foxtable(狐表)用户栏目专家坐堂 → [求助]【已解决】用Foxtable向网页写入数据


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

主题:[求助]【已解决】用Foxtable向网页写入数据

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


加好友 发短信
等级:小狐 帖子:304 积分:2684 威望:0 精华:0 注册:2011/10/29 16:26:00
  发帖心情 Post By:2019/7/4 0:51:00 [只看该作者]

本网页的层次是不是可以按下图理解?

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


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


加好友 发短信
等级:超级版主 帖子:107304 积分:545781 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/7/4 9:03:00 [只看该作者]

应该是
form1
    tr0
       input:xsdm0、cj0|0、cj0|1
    tr1
       input:xsdm1、cj1|0、cj1|1

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


加好友 发短信
等级:小狐 帖子:304 积分:2684 威望:0 精华:0 注册:2011/10/29 16:26:00
  发帖心情 Post By:2019/7/4 9:35:00 [只看该作者]

Dim web As System.Windows.Forms.WebBrowser = e.Form.Controls("webbrowser1").basecontrol
Dim Inputs = web.Document.Window.Frames("frm1").Document.GetElementsByTagName("input")
For Each Input As object In Inputs
    For i As Integer = 1 To 2
        If input.getAttribute("name") = "xsdm" & i Then
            Dim xhw As String = input.Parent.innerText
            Dim dr As DataRow = DataTables("成绩表").Find("学号 = '" & xhw & "'")
            msgbox("学号:" & xhw)
            If dr IsNot Nothing Then
                msgbox("找到了:" & "cj" & i & "|0")
                msgbox("找到了:" & "cj" & i & "|1")
                If Input.id = "cj" & i & "|0" Then
                    Input.SetAttribute("value", dr("平时成绩") )
                ElseIf input.id = "cj" & i & "|1" Then
                    Input.SetAttribute("value", dr("期末考试") )
                End If
            End If
        End If
    Next
Next

红色部分不能执行的原因就是因为name和id都是在同一层,所以Input.id就应该改为id是吗?

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


加好友 发短信
等级:超级版主 帖子:107304 积分:545781 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/7/4 9:55:00 [只看该作者]

请按照49楼的方式分析数据

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


加好友 发短信
等级:小狐 帖子:304 积分:2684 威望:0 精华:0 注册:2011/10/29 16:26:00
  发帖心情 Post By:2019/7/4 10:15:00 [只看该作者]

应该是
form1
    tr0
       input:标签    name                   id           id 
                   位置  xsdm0、             cj0|0、   cj0|1
                   值.Parent.innerText     value     value
    tr1
       input:标签    name                   id           id 
                  位置   xsdm1、             cj1|0、   cj1|1
                   值.Parent.innerText     value     value

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


加好友 发短信
等级:小狐 帖子:304 积分:2684 威望:0 精华:0 注册:2011/10/29 16:26:00
  发帖心情 Post By:2019/7/4 10:27:00 [只看该作者]

Input.id就应该改为tr*.GetElementsByTagName("input").getAttribute("id") 
对吗?
[此贴子已经被作者于2019/7/4 10:29:54编辑过]

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


加好友 发短信
等级:小狐 帖子:304 积分:2684 威望:0 精华:0 注册:2011/10/29 16:26:00
  发帖心情 Post By:2019/7/4 11:06:00 [只看该作者]

我改了层关系,
Dim web As System.Windows.Forms.WebBrowser = e.Form.Controls("webbrowser1").basecontrol
Dim trs = web.Document.Window.Frames("frm1").Document.GetElementsByTagName("tr")
For Each tr As object In trs
    Dim inputs = tr.GetElementsByTagName("input")
    For Each Input As object In Inputs
        If input.getAttribute("name") Like "xsdm*" Then
            Dim xhw As String = input.Parent.innerText
            msgbox("学号:" & xhw)
            Dim dr As DataRow = DataTables("成绩表").Find("学号 = '" & xhw & "'")
            If dr IsNot Nothing Then
                msgbox(xhw & "平时成绩" & dr("平时成绩"))
                msgbox(xhw & "期末考试" & dr("期末考试"))
                If Input.getAttribute("id") Like "cj*|0" Then
                    Input.SetAttribute("value", dr("平时成绩"))
                ElseIf Input.getAttribute("id") Like "cj*|1" Then
                    Input.SetAttribute("value", dr("期末考试"))
                End If
            End If
        End If
    Next
Next
也还是不能执行啊
[此贴子已经被作者于2019/7/4 11:22:20编辑过]

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


加好友 发短信
等级:小狐 帖子:304 积分:2684 威望:0 精华:0 注册:2011/10/29 16:26:00
  发帖心情 Post By:2019/7/4 12:49:00 [只看该作者]

蓝老师,实在是搞不懂了,请指点

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


加好友 发短信
等级:小狐 帖子:304 积分:2684 威望:0 精华:0 注册:2011/10/29 16:26:00
  发帖心情 Post By:2019/7/4 15:49:00 [只看该作者]

Dim web As System.Windows.Forms.WebBrowser = e.Form.Controls("webbrowser1").basecontrol
Dim trs = web.Document.Window.Frames("frm1").Document.GetElementsByTagName("tr")
For Each tr As object In trs
    Dim inputs = tr.GetElementsByTagName("input")
    For Each Input As object In Inputs
        
        If input.getAttribute("id") Like "cj*|0" Then
            If input.getAttribute("name") Like "xsdm*" Then
                Dim xhw As String = input.Parent.innerText
                'msgbox("学号:" & xhw)
                Dim dr As DataRow = DataTables("成绩表").Find("学号 = '" & xhw & "'")
                If dr IsNot Nothing Then
                    msgbox("找到了学号:" & xhw & "平时成绩")
                    Input.SetAttribute("value", dr("平时成绩"))
                End If
            End If
            
        ElseIf input.getAttribute("id") Like "cj*|1" Then
            If input.getAttribute("name") Like "xsdm*" Then
                Dim xhw As String = input.Parent.innerText
                'msgbox("学号:" & xhw)
                Dim dr As DataRow = DataTables("成绩表").Find("学号 = '" & xhw & "'")
                If dr IsNot Nothing Then
                    msgbox("找到了学号:" & xhw & "期末考试")
                    Input.SetAttribute("value", dr("期末考试"))
                End If
            End If
            
        End If
    Next
Next


换成以上的代码也不行啊,求蓝老师,甜老师指点!!!!!

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


加好友 发短信
等级:超级版主 帖子:107304 积分:545781 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/7/4 16:57:00 [只看该作者]

把网页完整内容发上来,我有空看看。

 回到顶部
总数 78 上一页 1 2 3 4 5 6 7 8 下一页