【发布时间】:2020-02-10 12:35:30
【问题描述】:
我正在尝试从位于网络共享上的 csv 文件填充下拉菜单。
当文件位于wwwroot 文件夹中时,我已经尽可能地让文件成功创建所有选项,但是现在我面临外部 url 引用问题。
Ajax 不支持本地 File:/// 目录,并且在尝试使用网络共享位置时也会失败:\\Server\Folder\File.csv
有没有什么方法可以使用 php 或其他服务器端语言从 csv 文件中读取数据,以便对数据执行我的工作?
以下代码供您参考:
<script>
function SubmitBy(){
$.ajax({
url: encodeURI('./PrinterLookup.csv'),
success: function(data) {
var splitData=data.split("\n");
for (var i = 0; i < splitData.length; i++) {
var colData = splitData[i];
var strucData = colData.substr(0, colData.indexOf("="));
$('#SubmitBy').append("<option value=\"" + strucData + "\">" +
strucData + "</option>");
}
}
});
}
</script>
寻找这样的东西,绕过ajax url限制:
<script>
function SubmitBy(){
<?php
$Datapath = "\\Server\Folder\Document.csv";
$Data = file_get_contents($Datapath);
?>
var data = $Data;
var splitData=data.split("\n");
for (var i = 0; i < splitData.length; i++) {
var colData = splitData[i];
var strucData = colData.substr(0, colData.indexOf("="));
$('#SubmitBy').append("<option value=\"" + strucData + "\">" +
strucData + "</option>");
}
}
});
}
</script>
对此的任何帮助将不胜感激。 提前谢谢你。
【问题讨论】:
-
你能做到吗
var data = <?= $data; ?> -
嗨@Jackhardcastle 不幸的是没有填充变量。关于如何找到确切的断点有什么想法吗?
-
有人有这个更新吗?似乎以某种方式未执行 PHP 并返回 null 或空值。
标签: javascript php ajax csv