我需要通过webbrowser填充输入。当我尝试getelementbyname我得到空值。你能帮我解决这个问题吗?
<input onfocus="showInfoBox(this, "Varchar(100) Latin capital letters only (A-Z) and spaces between surnames")" onblur="hideInfoBox()" value="" name="Surname"><input>
这是我的代码:
public HtmlElementCollection GetElemByName(string name)
{
if (webBrowser1.Document == null)
return null;
HtmlDocument doc = webBrowser1.Document;
return doc.All.GetElementsByName(name);
}
private void button2_Click(object sender, EventArgs e)
{
HtmlElementCollection col = GetElemByName("Surname");
if (col != null && col.Count > 0)
{
col[0].SetAttribute("Surname", "My Surname");
}
}
答案 0 :(得分:1)
没有属性姓氏。
你应该改变:
col[0].SetAttribute("name", "My Surname");
属性为:name
,id
,type
等......
在你的情况下这是名字。您还应添加input
的类型。类型可能是text
<input type="text" onfocus="showInfoBox(this, "Varchar(100) Latin capital letters only (A-Z) and spaces between surnames")" onblur="hideInfoBox()" value="" name="Surname"><input>
webBrowser1
的价值是什么,我希望它不是空的!