javascript - 图像未显示在带有 javascript 的手工页面中

标签 javascript asp.net css

我正在使用 JavaScript 打印我的网页的一部分,其中包含 Logo 和一些添加到其中的文本。 我的问题是显示了图像的位置,但图像本身不存在!

    <script>
    function printdiv(printpage) {

        var headstr = "<html><head><title></title></head><body>";
        var footstr = "</body>";
        var logostr = "<div style=\"width: 100%; text-align: center; height: 50px;\"><div class=\"pull-right\"><img src=\"../Images/lionLogo.jpg\" width=\"50\" height=\"50\" /></div><div>some text</div></div>";

        var newstr = document.all.item(printpage).innerHTML;
        var oldstr = document.body.innerHTML;
        document.body.innerHTML = headstr + logostr + newstr + footstr;
        window.print();
        document.body.innerHTML = oldstr;

        $('#modalShowDetails').modal('hide');
        $('body').removeClass('modal-open');
        $('.modal-backdrop').remove();
        $('.fade').remove();

        return false;
    }


</script>

最佳答案

您需要动态创建图像元素以将图像加载到 DOM 中

    var headstr = "<html><head><title></title></head><body>";
    var footstr = "</body>";
    var logostr = "<div style=\"width: 100%; text-align: center; height: 50px;\"><div class=\"pull-right\"></div><div>some text</div></div>";

    var newstr = document.all.item(printpage).innerHTML;
    var oldstr = document.body.innerHTML;
    document.body.innerHTML = headstr + logostr + newstr + footstr;


    var img = new Image();
    img.onload = function() {
      $('.pull-right').append(img);
    };

    //use full image source path like
    //img.src  = 'https://lh4.googleusercontent.com/-QEBhGh-wj2A/AAAAAAAAAAI/AAAAAAAAGNY/nogbhLrR0mc/photo.jpg';
    img.src = '../Images/lionLogo.jpg';
    img.width = "50";
    img.height = "50";

    //adding delay to load image
    setTimeout(function() {
       window.print();
       document.body.innerHTML = oldstr;
    }, 2000);



    $('#modalShowDetails').modal('hide');
    $('body').removeClass('modal-open');
    $('.modal-backdrop').remove();
    $('.fade').remove();

    return false;

关于javascript - 图像未显示在带有 javascript 的手工页面中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46203230/

相关文章:

javascript - 用于在客户端解码 JWT 的库

javascript - 使 JSON 提要在服务器到服务器之间工作

javascript - Rails 3 wicked_pdf 和分页

c# - 找不到 ASP.NET 5.0 中的 HttpClient?

html - 媒体查询不适用于 450 像素的屏幕大小

javascript - 如果两个变量都有值,jQuery 会连接变量吗?

asp.net - mvc 停止某个字段的客户端验证?

asp.net - 数据注解,为什么boolean prop.IsRequired 总是等于true

html - 将倾斜的 div 与背景图像堆叠在一起

html - div 关闭问题,它的 href 溢出到其他内容