gpt4 book ai didi

javascript - 在 Javascript/jQuery 中读取和显示 XML 内容

转载 作者:行者123 更新时间:2023-11-28 07:56:11 24 4
gpt4 key购买 nike

我使用下面的代码来读取 XML 文件并在同一屏幕上显示其中的详细信息。

<!DOCTYPE HTML>
<html>
<head>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
<script>
$(document).ready(function () {
$("#xmlButton").click(function() {
var xmlName = $('input:file').val();
$("#container").append("File Name:- " + xmlName);
$.get(xmlName,printData);
});

function printData(data) {
$(data).find("name").each(function(){
$("#container").append('<br/>'+$(this).text());
})
}
});
</script>
</head>

<body>
<h1> Upload XML </h1>
<form name="uploadForm" id="uploadForm" type="Get" action="" >
<input type="file" name="xmlFile" id="xmlFile">
<div id="container"></div>
<p><input type="button" name="xmlButton" id="xmlButton" value="Upload"></p>
</form>
</body>
</html>

我的 XMl 输入文件如下

 <root>
<info>
<name>name 1</name>
<place>Place 1</place>
</info>
<info>
<name>name 2</name>
<place>Place 2</place>
</info>
<info>
<name>name 3</name>
<place>Place 3</place>
</info>
</root>

上面的代码在 Mozilla Firefox 32 中工作正常,当我按下“上传”按钮时,它在 Chrome 14 版本中给出以下错误

XMLHttpRequest cannot load file:///C:/fakepath/test.xml. Cross origin requests are only supported for HTTP

在 IE8 中,控制台仅显示文件名,不显示错误消息。

还有其他方法可以让它在 Chrome 和 IE 中运行吗?我的主要目的是读取 xml 文件并在同一屏幕中打印它们。

最佳答案

嗯,出现此错误是因为您尝试对本地文件系统执行 ajax 调用。当您执行跨域请求(不在当前域中的请求)时,大多数浏览器都会停止请求。您需要先上传提交表单,然后当文件位于服务器上时,使用 ajax 加载。

另一种方式是使用HTML5,但您的浏览器需要支持它。更多信息http://www.html5rocks.com/en/tutorials/file/dndfiles/

关于javascript - 在 Javascript/jQuery 中读取和显示 XML 内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26059006/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com