我一直在尝试从我的c#表单输入数据,当我点击我的表单上的提交按钮时,它应该转移到网站的TextBox
...这里
private void button1_Click(object sender, EventArgs e)
{
webBrowser1.Document.All.GetElementsByName("email")[1].SetAttribute("Value", textBox2.Text);
webBrowser1.Document.All.GetElementsByName("pass")[1].SetAttribute("Value", textBox3.Text);
webBrowser1.Document.GetElementsByTagName("form")[1].InvokeMember("submit");
}
private void webBrowser1_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
{
}
private void button2_Click(object sender, EventArgs e)
{
}
private void Form1_Load(object sender, EventArgs e)
{
webBrowser1.Navigate("gmail.com");//Your link
webBrowser1.DocumentCompleted += new WebBrowserDocumentCompletedEventHandler(webBrowser1_DocumentCompleted);
}
我所做的是在网络浏览器中打开一个链接并搜索属性以在其中输入数据,但是当我将索引更改为零时它给出了"Value of '1' is not valid for 'index'. 'index' should be between 0 and -1."
的错误,它会给出相同的错误。
答案 0 :(得分:0)
GetElementsByName("email")[1]
表示至少有两个名为“email”的元素,你想选择第二个元素,因为[1]指定数组的索引,数组从索引0开始。
在你的情况下,似乎只有一个名为“email”的元素(可能是你想要获得的其余元素,假设存在一个具有该名称的元素),这意味着你需要获得数组中的第一项,换句话说GetElementsByName("email")[0]
答案 1 :(得分:0)
该代码已针对您的阵列进行了修订。
GetElementsByName("email")[0].