我正在编写一个C ++应用程序,它使用Javascript而不是CSV生成报告数据。我主张HTML和Javascript提供了一个生成和显示报告的强大工具。但是用C ++生成Javascript代码它有点笨拙。
我试图从Javascript中读取CSV,但我发现由于跨域策略,这是不可能的。我希望方便客户查看报告,而无需禁用跨域安全。
有效的代码:
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta charset="utf-8" />
<title>Read CSV from static file - Avoiding cross origin</title>
<script id="data" type="text/csv">
x, y
0, 0
1, 1
2, 4
</script>
</head>
<body>
<script type="text/javascript">
var data = document.getElementById('data');
alert(data.innerHTML);
</script>
</body>
</html>
不起作用的代码:
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta charset="utf-8" />
<title>Read CSV from static file - Avoiding cross origin</title>
<script id="data" type="text/csv" src="data.csv"></script>
</head>
<body>
<script type="text/javascript">
var data = document.getElementById('data');
alert(data.text);
</script>
</body>
</html>
为什么只使用外部纯文本数据不会显示任何内容?我可以使用<link>
或<meta>
代码解决此问题吗?谢谢你的帮助!