string entry = Titleentry.Text;
HtmlElementCollection theElementCollection;
HtmlDocument filters = webBrowser1.Document;
theElementCollection = webBrowser1.Document.GetElementsByTagName("input");
foreach (HtmlElement curElement in theElementCollection)
{
if ((curElement.GetAttribute("id").ToString() == "searchTitle"))
{
curElement.SetAttribute("value", entry);
}
}
filters.GetElementById("filterSortBy").GetAttribute("option").Select("price_low_high");
theElementCollection = webBrowser1.Document.GetElementsByTagName("button");
foreach (HtmlElement curElement in theElementCollection)
{
if (curElement.GetAttribute("id").Equals("searchSubmit"))
{
curElement.InvokeMember("click");
}
}
标记的声明给了我以下信息:
错误1方法的类型参数' System.Linq.Enumerable.Select(System.Collections.Generic.IEnumerable,System.Func)'无法从使用中推断出来。尝试显式指定类型参数。
我想要做的是从网站获取ID元素,因为如果我按标记名称尝试元素,则选择不正确的元素
我尝试使用html集合,但它说不能隐式地将html元素转换为html集合
答案 0 :(得分:0)
首先,Select
需要Func<TSource, TResult>
,而不仅仅是一个字符串,说明你想要的内容。其次,为什么你首先尝试使用Select
? GetAttribute
返回属性值的字符串。只需声明一个字符串即可捕获该值。
string option = filters.GetElementById("filterSortBy").GetAttribute("option");