【问题标题】:In Google Chrome, window.open fails on csv with # symbol in it在 Google Chrome 中,window.open 在带有 # 符号的 csv 上失败
【发布时间】:2019-02-22 10:32:38
【问题描述】:
window.open(encodeURI('data:text/csv;charset=utf-8,name,color\njohn,#000000'));

在 chrome 中,上一行下载了一个 csv ,内容如下:

name,color
john,

它似乎忽略了# 符号之后的所有内容。 你知道为什么吗?

ps:在 Safari 上似乎运行良好,它会打开一个包含所有内容的新闻选项卡

【问题讨论】:

    标签: javascript csv google-chrome urlencode window.open


    【解决方案1】:

    因为# 表示文档中某个位置的开始。

    你必须将它转义到%23:

    'data:text/csv;charset=utf-8,' + encodeURIComponent("name,color\njohn,#000000")
    

    data:text/csv;charset=utf-8,name%2Ccolor%0Ajohn%2C%23000000 的结果应该会更好。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-02-27
      • 1970-01-01
      • 2019-12-26
      • 1970-01-01
      • 2020-06-09
      • 2014-03-15
      • 2012-03-18
      • 2020-05-26
      相关资源
      最近更新 更多