提问者:小点点

用jQuery请求在HTML上显示svg


我试图从一个API中获得这个头像,当我点击按钮时出现在我的HTML上,但是它不工作。


$(document).ready(function () {

    $("#generate").click(function(){
        var c= $("#c").val().split(",");

        $.ajax({
            method: 'GET',
            url: "https://avatars.dicebear.com/api/male/example.svg",
            dataType: "svg"
        })
            .done(function(result){
                $('#result').html('<img src="data:image/png;base64,' + result + '" />');
            })

            .fail(function(error){
                console.log(error);
            });
    })


 });

共2个答案

匿名用户

SVG不是AJAX请求的有效数据类型。 此外,您不能将SVG文件的内容设置为img元素的base64编码内容。

要完成所需的任务,根本不需要AJAX。 只需将img元素的src设置为svg文件的URL:

null

<img src="https://avatars.dicebear.com/api/male/example.svg" />

匿名用户

要使用AJAX执行此操作,可以执行以下操作:

  $("#generate").click(function(){
      $.ajax({
          method: 'GET',
          url: "https://avatars.dicebear.com/api/male/example.svg",
          dataType: "html"
      })

      .done(function(result){
          $('#result').html(result);
      })

      .fail(function(error){
          console.log(error);
      });
  })

相关问题