【问题标题】:Rendering CSV data as HTML将 CSV 数据呈现为 HTML
【发布时间】:2012-11-06 19:22:42
【问题描述】:

我正在尝试让 jquery csv to table 插件与 jquery 文件上传插件一起使用(请参阅http://code.google.com/p/jquerycsvtotable/)。它支持上传 CSV 文件,并在成功上传后(使用 JQuery 文件上传)立即将其呈现为同一页面上的 HTML。当我按照下面的示例设置 $filePath 时,这可以正常工作。但是,我希望将此值作为隐藏字段传递并使用 .attr 方法检索它。但是,当我这样做时,CSV to table 似乎无法正确呈现,并且页面似乎与 loadingImage 一起挂起(更新仍然有效),并且未执行“loadComplete”功能(根据下面示例中的警报)。

我可以让它工作如下(见粗体行):

    }).bind('fileuploadcompleted', function (e, data) {        
        var $filename = $.trim($('#fileupload td.name').text());
        **var $filePath = 'bundles/jqueryfileupload/users/';
        //var $filepath = $('#upload_path_id').attr('value');**
        $.get($filePath + $filename, function(data) {
            $('#CSVSource').html('<pre>' + data + '</pre>');
        });
        $('#CSVTable').CSVToTable($filePath + $filename,{
          loadingImage: 'bundles/jqueryfileupload/img/loading-table.gif',
          startLine: 0 }             
        ).bind("loadComplete",function() {
              alert('load complete!');
              $('button.btn.import').removeClass('disabled').addClass('ready');
              $('div.alert.alert-info').show();
        });

知道如何解决这个问题吗?

更新:看起来问题存在,因为我正在检索绝对路径,而将 csv 呈现为 HTML 的 ajax 调用失败了。我正在使用 Laravel 并更新了 paths.php 文件以包含以下条目:

// --------------------------------------------------------------
// The path to the storage/users directory.
// --------------------------------------------------------------
$paths['user_files'] = 'storage/users';

然后在我的视图文件中,我将文件路径作为隐藏字段传递,如下所示:

<input type="hidden" id="upload_path_id" name="upload_path" value={{ path('user_files') }}>

所以我的问题是,如果我在我的机器上本地同时使用 Laravel 和 Xampp,有没有办法让它与 ajax 一起作为相对路径或其他方式工作?我在上面使用的文件夹是 Laravel 的一部分(即在“存储”下),并且位于公共目录之上。

对此的任何帮助将不胜感激。

【问题讨论】:

    标签: jquery csv relative-path absolute-path laravel


    【解决方案1】:

    在 IRC 上聊天我得到了支持,建议创建一个到控制器 (php) 的路由,该控制器将有权访问 Storage 目录并以这种方式检索文件内容。

    因此,我将使用以下内容,而不是当前的 php -> js -> js 场景: php(视图)-> js(进行ajax调用)-> php(控制器)-> 获取存储路径-> php(控制器)(执行文件获取内容)-> js(将结果渲染为HTML)

    【讨论】:

      猜你喜欢
      • 2011-09-09
      • 2021-06-16
      • 1970-01-01
      • 1970-01-01
      • 2018-02-18
      • 1970-01-01
      • 2023-02-03
      • 2019-10-19
      • 1970-01-01
      相关资源
      最近更新 更多