加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

vb.net – 我需要更好地理解我的if语句

发布时间:2020-12-17 07:13:06 所属栏目:百科 来源:网络整理
导读:Private Sub WebBrowser1_DocumentCompleted(ByVal sender As System.Object,ByVal e As System.Windows.Forms.WebBrowserDocumentCompletedEventArgs) Handles WebBrowser1.DocumentCompleted Dim PageInput As HtmlElementCollection = WebBrowser1.Docume
Private Sub WebBrowser1_DocumentCompleted(ByVal sender As System.Object,ByVal e As System.Windows.Forms.WebBrowserDocumentCompletedEventArgs) Handles WebBrowser1.DocumentCompleted
    Dim PageInput As HtmlElementCollection = WebBrowser1.Document.GetElementsByTagName("input")
    For Each elem As HtmlElement In PageInput
        If elem.GetAttribute("name") = "wdf_origin" Then
            elem.SetAttribute("value",FromTXT.Text)
        End If
        If elem.GetAttribute("name") = "wdf_destination" Then
            elem.SetAttribute("value",ToTXT.Text)
        End If
        If RadioButton1.Checked = True Then
            elem.GetAttribute("id") = "oneway" Then
            elem.SetAttribute("checked",RadioButton1.Checked) Then
            elem.GetAttribute("id") = "wdfdate1" Then
            elem.SetAttribute("value",DateTimePicker1.Text)
        End If
        If RadioButton2.Checked = True Then
            elem.GetAttribute("id") = "return" Then
            elem.SetAttribute("checked",RadioButton2.Checked) Then
            elem.GetAttribute("id") = "wdfdate1" Then
            elem.SetAttribute("value",DateTimePicker1.Text) Then
            elem.GetAttribute("id") = "wdfdate2" Then
            elem.SetAttribute("value",DateTimePicker2.Text)
        End If
    Next

    Dim PageInput2 As HtmlElementCollection = WebBrowser1.Document.GetElementsByTagName("select")
    For Each elem As HtmlElement In PageInput2
        If elem.GetAttribute("id") = "adults" Then
            elem.SetAttribute("value",AdultsTXT.Text)
        End If
        If elem.GetAttribute("id") = "children" Then
            elem.SetAttribute("value",ChildrenTXT.Text)
        End If
        If elem.GetAttribute("id") = "infants" Then
            elem.SetAttribute("value",InfantsTXT.Text)
        End If
        If RadioButton1.Checked = True Then
            elem.GetAttribute("id") = "wdftime1" Then
            elem.SetAttribute("value",Time1TXT.Text)
        End If
        If RadioButton2.Checked = True Then
            elem.GetAttribute("id") = "wdftime2" Then
            elem.SetAttribute("value",Time2TXT.Text) Then
            elem.GetAttribute("id") = "wdftime1" Then
            elem.SetAttribute("value",Time1TXT.Text)
        End If
    Next
End Sub

目前,我收到了这个错误

expression is a value and therefore cannot be the target of an assignment

在elem.GetAttribute(“”)行.随之而来的是它预计该声明将在一些Thens上结束.我可以不在if语句中设置某些方法,以便它们包含某些文本框吗?我试图让RadioButtons发送某些文本框取决于选择哪个RadioButton.

任何建议或资源都会有所帮助.

解决方法

你需要确保每个然后有一个相应的If,你看起来实际上需要使用 AndAlsoElseIf运算符来做你想要的.您获取“表达式是一个值,因此不能成为赋值的目标”错误的原因是因为您尝试将值分配给GetAttribute,因为缺少If语句.

看看这对你有效.

Private Sub WebBrowser1_DocumentCompleted(sender As System.Object,e As System.Windows.Forms.WebBrowserDocumentCompletedEventArgs) Handles WebBrowser1.DocumentCompleted
    Dim PageInput As HtmlElementCollection = WebBrowser1.Document.GetElementsByTagName("input")
    For Each elem As HtmlElement In PageInput
        If elem.GetAttribute("name") = "wdf_origin" Then
            elem.SetAttribute("value",ToTXT.Text)
        End If
        If RadioButton1.Checked then
            If elem.GetAttribute("id") = "oneway" Then
                elem.SetAttribute("checked",CStr(RadioButton1.Checked))
            ElseIf elem.GetAttribute("id") = "wdfdate1" Then
                elem.SetAttribute("value",DateTimePicker1.Text)
            End If
        End If

        If RadioButton2.Checked then
            If elem.GetAttribute("id") = "return" Then
                elem.SetAttribute("checked",RadioButton2.Checked.ToString)
            ElseIf elem.GetAttribute("id") = "wdfdate1" Then
                elem.SetAttribute("value",DateTimePicker1.Text)
            ElseIf elem.GetAttribute("id") = "wdfdate2" Then
                elem.SetAttribute("value",DateTimePicker2.Text)
            End If
        End If

    Next

    Dim PageInput2 As HtmlElementCollection = WebBrowser1.Document.GetElementsByTagName("select")
    For Each elem As HtmlElement In PageInput2
        If elem.GetAttribute("id") = "adults" Then
            elem.SetAttribute("value",InfantsTXT.Text)
        End If
        If RadioButton1.Checked AndAlso elem.GetAttribute("id") = "wdftime1" Then
            elem.SetAttribute("value",Time1TXT.Text)
        End If
        If RadioButton2.Checked Then
            If elem.GetAttribute("id") = "wdftime2" Then
                elem.SetAttribute("value",Time2TXT.Text)
            ElseIf elem.GetAttribute("id") = "wdftime1" Then
                elem.SetAttribute("value",Time1TXT.Text)
            End If
        End If
    Next

End Sub

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读