Javascript 使用jQuery嵌入上传的svg

Javascript 使用jQuery嵌入上传的svg,javascript,jquery,html,svg,Javascript,Jquery,Html,Svg,我正在使用jQuery和文件标签上传svg: HTML: SVG正在上传并显示在图像标签上。问题是,我需要将svg嵌入到html中,而不仅仅是将其显示为图像。您知道如何获取svg代码并将其嵌入到html中吗?我想让您参考 在这里,它表示您将返回一个带有数据属性的base64编码字符串。因此,为了获得清晰的文本,您需要在开始时删除“data://*;base64”(在您的示例中,可能是针对*/*的image/svg+xml,但您可以在开发工具中查找),然后执行base64解码。之后,您应该能够将s

我正在使用jQuery和文件标签上传svg:

HTML:

SVG正在上传并显示在图像标签上。问题是,我需要将svg嵌入到html中,而不仅仅是将其显示为图像。您知道如何获取svg代码并将其嵌入到html中吗?

我想让您参考

在这里,它表示您将返回一个带有数据属性的base64编码字符串。因此,为了获得清晰的文本,您需要在开始时删除“data://*;base64”(在您的示例中,可能是针对*/*的image/svg+xml,但您可以在开发工具中查找),然后执行base64解码。之后,您应该能够将svg直接放入dom中

解码:

let base64 = e.target.result.split('base64,')[1];
let clear = atob(base64);

我只是添加了解码部分来帮助你。
 $(function () {
$(":file").change(function () {
    if (this.files && this.files[0]) {
        var reader = new FileReader();
        reader.onload = imageIsLoaded;
        reader.readAsDataURL(this.files[0]);
    }
});
});

         function imageIsLoaded(e) {
             $('#myImg').attr('src', e.target.result);
  };
let base64 = e.target.result.split('base64,')[1];
let clear = atob(base64);