在 Chrome 中使用 JavaScript 读取 XML 文件

2023-11-25

我需要使用 JavaScript 加载和读取 XML 文件。

以下代码在 Firefox、IE 和 Opera 中运行良好:

function loadXMLDoc(dname) {
  var xmlDoc

  // Internet Explorer
  try {
    xmlDoc = new ActiveXObject('Microsoft.XMLDOM')
  }
  catch (e) {
    // Firefox, Opera, etc.
    try {
      xmlDoc = document.implementation.createDocument('', '', null)
    }
    catch (e) {
      alert(e.message)
    }
  }

  try {
    xmlDoc.async = false
    xmlDoc.load(dname)
    return xmlDoc
  }
  catch (e) {
    alert(e.message)
  }

  return null
}

但在 Chrome 中执行此代码会出现以下错误:

Object# 没有方法“load”


遗留代码

document.implementation.createDocument不适用于 Chrome 和 Safari。

Use XMLHttpRequest相反,如果可能的话:

function loadXMLSync(url) {
  try {
    // Prefer XMLHttpRequest when available
    var xhr = new XMLHttpRequest()
    xhr.open('GET', url, false)
    xhr.setRequestHeader('Content-Type', 'text/xml')
    xhr.send()

    return xhr.responseXML
  }
  catch (e) {
    // XMLHttpRequest not available, fallback on ActiveXObject
    try {
      var activex = new ActiveXObject('Microsoft.XMLDOM')
      activex.async = false
      activex.load(url)

      return activex
    }
    catch (e) {
      // Neither XMLHttpRequest or ActiveXObject are available
      return undefined
    }
  }
}

现代浏览器

如果您的目标是现代浏览器 (> IE6),只需使用 XMLHttpRequest:

function loadXMLSync(url) {
  var xhr = new XMLHttpRequest()

  xhr.open('GET', url, false)
  xhr.setRequestHeader('Content-Type', 'text/xml')
  xhr.send()

  return xhr.responseXML
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 Chrome 中使用 JavaScript 读取 XML 文件 的相关文章

  • 1分30秒倒计时器javascript

    我有代码 但它适用于 2 分钟计时器 我需要将其修改为 1 分 30 秒计时器 我已经尝试过 但未能从 1 30 开始计时器 因为我是这一行的初学者 并且想学习如何做到这一点 这是代码 div div
  • 将组件注册到现有的 Vue.js 实例

    我是 Vue js 新手 我想注册一个本地组件 如下所述 https v2 vuejs org v2 guide components html Local Registration https v2 vuejs org v2 guide
  • Visual Studio IDE 中功能后的空间

    如何设置 Visual Studio 中的设计以在我的 javascript 函数后面放置一个空格 目前 当我按下返回键时 我得到了这个 var myfunc function 当我想要这个的时候 var myfunc function 知
  • 如何在下拉列表中选择一个选项

    我正在使用 AngularJS 指令 我需要在模板中设置下拉列表的选定选项
  • RequireJS 文本插件和变量连接字符串

    我正在使用 RequireJS 文本插件来加载一些 html 模板 当我将字符串文字传递给 require 函数时 它工作正常 var templateHTML require text templates template name ht
  • SVG 中三角形的圆角

    我正在尝试制作一个具有圆角的三角形 三角形将如下所示 左下角是唯一看起来相当容易制作的角 主要是因为这是一个 90 度的 转弯 该转弯是使用QSVG 中的命令具有以下参数 Q x y height x y height RADIUS从我正在
  • Famo.us 滚动视图高度

    我正在尝试使用著名的顺序布局在滚动视图下方添加图像 但滚动视图的高度有问题 这就是我创建滚动视图的方式 var scrollview new Scrollview direction Utility Direction X options
  • VBA XML V6.0 如何让它等待页面加载?

    我一直在努力寻找答案 但似乎找不到任何有用的东西 基本上 我是从一个网站上拉取的 当您在该页面上时 该网站会加载更多项目 我希望我的代码在加载完成后提取最终数据 但不知道如何让 XML httprequest 等待 Edited Sub p
  • 很奇怪!调用 window.location 或 location.replace 会重定向到该页面,然后再次返回!

    我处于调试模式 因此我可以看到正在访问哪个页面 当我打电话时window location or window location replace 它会转到该页面 然后返回原始页面 怎么会这样 解决方案是添加 window location
  • 如何正确删除动画集中引用的 Raphael SVG 元素?

    我有一组动画 Raphael SVG 元素 我正在通过用户发起的 ajax 调用添加新元素并删除旧元素 我 set push 新元素 但因为我需要删除的元素通常不是集合中的最后一个元素 所以我使用 element remove 而不是 se
  • 大型应用的回流/布局性能

    我正在使用 GWT 构建一个 HTML 应用程序 其性能总体上是正确的 有时 它会加载 DOM 中的许多对象 并且应用程序会变得很慢 我使用 Chrome 开发者工具分析器来查看时间花在哪里 在 Chrome 下 一旦应用程序被编译 即没有
  • 我可以在不使用 Jquery UI 的情况下获得 Jquery Pulsate Effect 吗?

    我遇到了由于某种原因无法使用 Jquery UI 的情况 我正在尝试在不使用 Jquery UI 的情况下获得 Jquery UI 脉冲效果 与此链接类似 http docs jquery com UI Effects Pulsate ht
  • selenium-webdriver 与 webdriverjs 有什么区别(以及何时使用)?

    我是一位使用 selenium webdriver 的经验丰富的专业人士 我正在探索有关如何测试 javascript 应用程序的更多选项 我发现了 webdriverJs 不幸的是 我不明白这两者 2 之间有什么区别 有人可以解释一下何时
  • 如何上传文件 - sails.js

    我可以下载图像和 pdf 但无法下载文档文件 doc pptx odt 下载文档 doc pptx odt 时 仅将其下载为 ZIP XML 文件 我可以做什么 我在用着 填写上传文件文档 https github com balderda
  • python dicttoxml 多次使用相同的键

    我正在尝试做如下所示的 xml
  • Promise 构造函数回调的主体何时执行?

    假设我有以下代码构造一个Promise function doSomethingAsynchronous return new Promise resolve gt const result doSomeWork setTimeout gt
  • 使用 Socket.IO 时如何访问会话标识符?

    我有一个聊天 我需要管理独特的连接 我四处搜寻 但我找到的解决方案似乎都已被弃用 那么 如何使用 Socket IO 获取套接字的会话 ID 我在用着Node js http en wikipedia org wiki Node js Ex
  • d3力定向布局-链接距离优先

    在 d3 中使用力导向布局 如何使链接距离成为优先事项 同时仍然保持良好的图形布局 如果我指定动态链接距离 但保留默认费用 则我的图形距离会因费用函数而发生一些变形 并且不再是准确的距离 但是 如果我删除电荷 图表将如下所示 任何建议表示赞
  • 使用 div 或表格来包含链接列更好吗?

    我的页面底部有 3 列链接 每列都放入一个 div 中 所有三个 div 都包装在页面中央的一个大 div 中 这是更适合桌子的东西还是桌子不适合这项工作 您还可以使用 ul http www w3schools com tags tag
  • xsi:type 属性搞乱了 C# XML 反序列化

    我使用 XSD exe 根据 XML 架构 xsd 文件 自动生成 C 对象 我正在反序列化 OpenCover 输出 但其中一个部分类未正确生成 这是导致异常的行

随机推荐

  • sed 不替换行

    我有一个包含 1 行文本的文件 名为output 我有该文件的写权限 我可以毫无问题地从编辑器更改它 cat output 1 ls l o rw rw r 1 jbk jbk 2 Jan 27 18 44 output 我想要做的是用新值
  • 来自其他应用程序的 OSX 音频劫持风格音频录制(可可)[关闭]

    Closed 这个问题需要多问focused 目前不接受答案 嗨 基本上我迷失在苹果文档中 不知道从哪里开始 我需要录制系统上运行的应用程序的音频 类似于音频劫持和窃听工作室专业版 但我不确定从哪里开始使用音频捕获器 我看到了 Quickt
  • 表单身份验证和授权 MVC 4

    我正在尝试创建一个匿名控制器以实现表单身份验证 我使用匿名和表单身份验证配置我的 IIS 7enabled并将我的 web config 设置为deny匿名用户 在登录控制器上 我将 AllowAnonymous 装饰放在我的控制器 和我的
  • 如何使用 ServiceStack 进行基于令牌的身份验证

    如何使用 ServiceStack 实现以下场景 初始请求转到http localhost auth授权标头定义如下 Authorization Basic skdjflsdkfj IAuthProvider 实现根据用户存储进行验证 并返
  • 在数据框中每行选择一个单元格

    我有一个向量告诉我 对于日期框架中的每一行 应更新该行中的值的列索引 gt set seed 12008 n lt 10000 d lt data frame c1 1 n c2 2 1 n c3 3 1 n gt i lt sample
  • 如何通过方法返回的引用将哈希元素插入字符串中?

    我想将哈希引用插入到字符串中 但此方法不起作用 如何插值 self gt Test gt text self gt Test gt text contains test 123 ok print Value is self gt Test
  • 为什么我的 time() 在 php 中慢了一小时?

    我使用以下代码将当前日期和时间添加到我的数据库中 current date time time echo date n j y g ia current date time 它显示为 11 29 09 12 38am 而实际上应该是 11
  • 如何在AWS S3中列出tar内的文件而不下载它?

    在四处寻找我发现的想法时https stackoverflow com a 54222447 264822对于 zip 文件 我认为这是一个非常聪明的解决方案 但它依赖于具有中央目录 tar 文件则不然 我认为我可以遵循相同的一般原则并将
  • Firebase 不适用于真实设备 (iOS)

    我在 iOS 应用中安装 Firebase 在模拟器上一切正常 但在真实设备上它不会执行 返回查询到我的数据库 我尝试清理该项目 但它没有改变任何东西 你有解决办法吗 编辑 用代码更新 override func viewDidLoad s
  • Java 6 中对 ISO 8601 格式的通用支持

    Java 7 引入了支持SimpleDateFormatISO 8601 格式的类 通过字符X 而不是小写或大写Z 在 Java 6 中支持此类格式需要预处理 因此最好的方法就是问题 这种新格式是以下格式的超集Z 大写 Z 还有 2 个附加
  • 从.Net Core 2.0中的IActionFilter获取HttpStatus代码

    我在 ASP NET core 2 0 中有过滤器属性 请参阅下面的代码片段 这里的问题是我总是得到状态代码是 200 即使实际状态代码是 500 我也会得到 200 如何获取实际状态代码 public void OnActionExecu
  • MySQL:对 GROUP_CONCAT 值进行排序

    简而言之 有什么方法可以对 GROUP CONCAT 语句中的值进行排序吗 Query GROUP CONCAT SELECT GROUP CONCAT parent name SEPARATOR raquo FROM test compe
  • React Native IOS 构建 CFBundleIdentifier 不存在

    我已经创建了示例 React Native 项目 并按照 React Native 网站的教程进行操作 我尝试运行应用程序IOS模拟器 其抛出错误如下 BUILD FAILED The following build commands fa
  • 使用 CMake 编译静态可执行文件

    对于一个项目 我需要创建一个可执行文件 其中包含我使用的所有库 opencv cgal 以便在没有这些库的计算机上执行它 目前 这是我的 CMakeLists txt 我使用 Linux cmake minimum required VER
  • 使用 Pandas 和 PyMongo 将 MongoDB 数据加载到 DataFrame 的更好方法是什么?

    我有一个 0 7 GB 的 MongoDB 数据库 其中包含我试图加载到数据帧中的推文 但是 我收到错误 MemoryError 我的代码如下所示 cursor tweets find Where tweets is my collecti
  • 自动释放与释放

    考虑到这两种情况 哪种代码是最佳实践 为什么 自动释放 loginButton UIBarButtonItem alloc initWithTitle Login style UIBarButtonItemStylePlain target
  • Java 中如何退出 while 循环?

    Java 中退出 终止 while 循环的最佳方法是什么 比如我目前的代码如下 while true if obj null I need to exit here Use break while true if obj null brea
  • Python 类中的类属性遮蔽[重复]

    这个问题在这里已经有答案了 我正在学习this and this了解类属性 但对以下代码片段的输出感到困惑 class A aliases None name None def init self name self name name s
  • 为什么在 Visual C++ 2008 中构建结构时会收到这些警告?

    我有这个代码 typedef struct const char fooString const bool fooBool fooStruct 这个初始化器 static const fooStruct foo file1 true fil
  • 在 Chrome 中使用 JavaScript 读取 XML 文件

    我需要使用 JavaScript 加载和读取 XML 文件 以下代码在 Firefox IE 和 Opera 中运行良好 function loadXMLDoc dname var xmlDoc Internet Explorer try