2014-10-21 6 views
1

내 프로그램에서 자동 로그인을 시도하고 있습니다. GetElementById가 특정 상자에서 작동하지 않습니다.

내가 전자 우편 상자를 찾은 다음 값을 설정하는 데 사용하고 코드입니다 :. WebBrowser1.Document.GetElementById ("메일")의 setAttribute ("값", ID & "@hotmail. COM ")

나는 전자 우편 상자의 요소가 입력 클래스 = 말한다 곤충 경우"텍스트 상자 "유형 ="이메일 "이름 ="이메일 "내가 잘못 뭐하는 거지

? : L

답변

2

이름 대신 id를 참조하십시오. 즉, 대신에 "이메일"

입력 이름 = "이메일"유형 = "버튼"ID = "email_ema"값 = "+"스타일 =의 "email_ema" "디스플레이 : 없음;"...

WebBrowser1.Document.GetElementById("email_ema").SetAttribute("value,", ID & "@hotmail.com") 
+0

감사합니다! 어떻게하면 ID를 찾을 수 있습니까? – Owen

1

요소에 반드시 ID가있을 필요는 없습니다.

http://msdn.microsoft.com/en-us/library/system.windows.forms.htmldocument.getelementsbytagname(v=vs.110).aspx

그런 경우가 있다면, 당신은 GetElementsByTagName를 통해 컬렉션을 받고 통해 반복에서 살펴 보셔야합니다 -이 라인을 따라 뭔가 : 답장을

Dim Elems As HtmlElementCollection 

Elems = WebBrowser1.Document.GetElementsByTagName("input") 

For Each elem As HtmlElement In Elems 
    Dim nameValue As String = elem.GetAttribute("name") 
     If nameValue.ToLower().Equals("email") Then 
      elem.SetAttribute("value,", ID & "@hotmail.com") 
     End If 
Next 
+0

답장을 보내 주셔서 감사합니다. 나는 그 코드가 무엇을 해야하는지 잘 모르겠지만 그것을 시도하고 아무 것도하지 않았다. 나는 이름을 바꾸고 모든 문자열을 "이메일"로 바꿨다. 아무 것도하지 않았다. 나는 VB.NET에 익숙하지 않아서 많이 알지 못한다. – Owen

관련 문제