Sachin Kumar Ответов: 1

Как щелкнуть по тегу all TD в столбце


Мне нужно щелкнуть все TD[4] в столбце для каждой строки, доступной в таблице. Таблица представлена в следующем формате:

Name Total Doc
A     12
B     11


12 & 11-это ссылка, и мне нужно нажать 12 сначала и 11 после и так далее в зависимости от общего количества строк таблицы.

Не могли бы вы помочь?

Что я уже пробовал:

HtmlElementCollection myRows = element.GetElementsByTagName("TR");

	// Loop through the rows in the table
	foreach(HtmlElement row in myRows)
	{
	// Get all columns in row
	HtmlElementCollection myCols = element.GetElementsByTagName("TD[4]");

	// Loop through the columns
	foreach(HtmlElement col in myCols)
	{
	// Get attribute value
	string attVal = col.GetAttribute("A");
	element.InvokeMember("onclick");
	}
	}

1 Ответов

Рейтинг:
1

Richard Deeming

Вы показали таблицу с тремя столбцами, но вы пытаетесь получить доступ к пятому столбцу в каждой строке.

Вы не можете включить индекс в список GetElementsByTagName звоните; их нет <td[4]> элементы.

То <a> элемент-это элемент, а не атрибут на карте. <td>.

Вам нужно нажать на кнопку <a> элемент, а не сам <td> элемент. И вам нужно пройти "click" к InvokeMember, нет "onclick".

Предполагая, что каждая строка имеет только одну ссылку, попробуйте:

foreach (HtmlElement row in myRows)
{
    HtmlElementCollection myLinks = element.GetElementsByTagName("a");
    foreach (HtmlElement link in myLinks)
    {
        link.InvokeMember("click");
    }
}