1

HTML ドキュメントがある場合、テーブル内のすべてのタグ値を取得する最良の方法は?

次に例を示します。

<html>
  <head>
    <meta http-equiv="content-type" content="text/html; charset=utf-8" />
  </head>
  <body>
    <table border="1">
      <thead>
        <tr>
          <th>#</th>
        </tr>
      </thead>
      <tbody>
        <tr>
          <td></td>
          <td></td>
          <td></td>
          <td></td>
        </tr>
      </tbody>
    </table>
  </body>
</html>

スレッド内のすべての th 値を取得するにはどうすればよいですか? また、tbody テーブルの行のすべての値を取得したいと考えています。

私はいくつかの XML 文書コードを書き込もうとしましたが、うまくいきませんでした。私を助けるためにいくつかのコードを教えてください。

アップデート

ここに私が取り組んでいる私の現在のコードがあります:

using (StreamReader sr = new StreamReader(textBoxBugTrackFilename.Text))
{
    String line = sr.ReadToEnd();
    var document = XDocument.Parse(line);

    var headings = document.Element("thead").Elements().Select(x => x.Value);
    foreach (var h in headings)
    {
        MessageBox.Show(h.ToString());
    }
}

このエラーが発生しています:

オブジェクト参照がオブジェクト インスタンスに設定されていません。

行で:

var headings = document.Element("thead").Elements().Select(x => x.Value);
4

2 に答える 2

1

ステートメント.Element("thead")

.Descendants("thead").First()

null 例外が発生する問題は、要素がタグtheadの最初のレベルの子ではないためです。html末裔です。

より良い.Descendants("thead").First()のは、その下にサブ要素trがあり、次にth要素があることです。

代わりに、以下のようにコードを変更します。

var headings = document.Descendants("th")
                       .Select(th => th.Value);
于 2013-11-13T04:41:30.593 に答える
0

getElementsByTagName() を試しましたか?

Javascript のみを使用してこれを解決しますか? またはjQueryを使用できますか?

jQuery を使用すると、 $('table').find() を使用できます

于 2013-11-13T00:31:51.387 に答える