0

我想使用 Javascript 解析 XML 文件中的一些数据。它在 Google Chrome 上运行良好,但现在我发现使用 Safari 时出现问题。由于调用 xml_genre.children,我收到一个错误:此元素不包含 Safari 中的子项信息,但我可以在 Chrome 中毫无问题地运行它。

我找到的唯一解决方案是使用子节点,但在那里我也得到了一些不需要的数据,比如多个空格。

有没有更好的解决方案来使用 Javascript 遍历这样的 XML?

从 XML 文件中提取:

<genres>
    <genre>Thriller</genre>
    <genre>Comedy</genre>
</genres>

从 Javascript 代码中提取:

var xml_genre = movie_file.getElementsByTagName("genres")[0];
if (xml_genre != null) {
  var genres = new Array();
  for(var i = 0; i < xml_genre.children.length; i++) {
    genres.push(xml_genre.children[i].textContent);
  }
  movie.setGenre(genres);
}
4

1 回答 1

0

现在我采取了不同的方法。这适用于我需要的 Chrome 和 Safari:

var xml_genres = movie_file.getElementsByTagName("genres")[0];
if (xml_genres != null) {
  var xml_genre = xml_genres.getElementsByTagName("genre");
  var genres = new Array();
  for(var i = 0; i < xml_genre.length; i++) {
    genres.push(xml_genre[i].textContent);
  }
  movie.setGenre(genres);
}
于 2013-10-22T11:01:26.050 回答