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,你看起来实际上需要使用AndAlso
和
ElseIf
运算符来做你想要的.您获取“表达式是一个值,因此不能成为赋值的目标”错误的原因是因为您尝试将值分配给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", FromTXT.Text) End If If elem.GetAttribute("name") = "wdf_destination" 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", 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 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