我尝试在我的HTML中填充“Select”元素,而它在C#应用程序中在我自己的浏览器上打开。所以我这样做了:
DataTable dt = new DataTable();
HtmlElement States = webBrowser1.Document.GetElementById("Select1");
da.Fill(dt);
States.InnerHtml = "";
for (int i = 0; i < dt.Rows.Count; i++)
{
string head = String.Format(@"<option Value=""{1}"">",
dt.Rows[i]["Code"].ToString());
string body = String.Format("{0}</option>", dt.Rows[i]["Name"].ToString());
string tag = head + body;
States.InnerHtml =tag;
}
但令人惊讶的是,当我希望结果是这样的时候
< option Value="aNumber">testString<\option>
我明白这一点:
testString<\option>
当我努力编写预期的字符串时,我在这里看到了同样的问题。最后,我在字符串的第二个字符处插入了一个空格。因此,我在此处< option>
而不是<option>
。我为该字符串执行了相同的操作,我想将其传递给元素的InnerHtml
属性。但不幸的是它没有用。
答案 0 :(得分:2)
不应该这个
string head = String.Format(@"<option Value=""{1}"">",
dt.Rows[i]["Code"].ToString());
是吗?
string head = String.Format(@"<option Value=""{0}"">",
dt.Rows[i]["Code"].ToString());