• 设为首页
  • 收藏本站
  • 积分充值
  • VIP赞助
  • 手机版
  • 微博
  • 微信
    微信公众号 添加方式:
    1:搜索微信号(888888
    2:扫描左侧二维码
  • 快捷导航
    福建二哥 门户 查看主题

    解决Extjs上传图片无法预览的解决方法

    发布者: 皮3591 | 发布时间: 2025-8-13 13:44| 查看数: 58| 评论数: 0|帖子模式

    {
    width: 450,
    fileUpload: true,
    fieldLabel: '选择图片',
    items: [{
    xtype: 'textfield',
    id: 'up_forth',
    name: 'up_forth',
    inputType: 'file',
    width: 300
    }]
    }

    预览box

    {
    columnWidth: .18,
    bodyStyle: ' margin:4px 10px 10px 5px',
    layout: 'form',
    items: [{
    xtype: 'box',
    autoEl: {
    width: 150, height: 150,
    tag: 'div',
    id: 'browser_up_forth'
    }
    }]
    }


    myfrom表示上传控件外围的FormPanel,, contril_id表示上传控件的ID,只要在程序上预览注册该方法就可以,preview (myfrom,'up_forth' );

    var preview = function (myform, control_id) {
    var img_reg = /\.([jJ][pP][gG]){1}$|\.([jJ][pP][eE][gG]){1}$|\.([gG][iI][fF]){1}$|\.([pP][nN][gG]){1}$|\.([bB][mM][pP]){1}$/
    myform.on('render', function (f) {
    myform.form.findField(control_id).on('render', function () {
    Ext.get(control_id).on('change', function (field, newValue, oldValue) {
    var obj = Ext.get(control_id).dom;
    var url = getFullPath(obj);
    if (img_reg.test(url)) {
    var newPreview = Ext.get('browser_' + control_id).dom;
    var showPic = Ext.get("showPic_" + control_id);
    if (showPic != null) {
    showPic.remove();//删除原来的图片
    }
    var imgDiv = document.createElement("div");
    imgDiv.id = "showPic_" + control_id;
    document.body.appendChild(imgDiv);
    imgDiv.style.width = "150px";
    imgDiv.style.height = "150px";
    imgDiv.style.filter = "progidXImageTransform.Microsoft.AlphaImageLoader(sizingMethod = scale)";
    imgDiv.filters.item("DXImageTransform.Microsoft.AlphaImageLoader").src = url;
    newPreview.appendChild(imgDiv);
    }
    }, this);
    }, this);
    }, this);
    }

    //得到图片地址
    function getFullPath(obj) {
    if (obj) {
    // ie
    if (window.navigator.userAgent.indexOf("MSIE") >= 1) {
    obj.select();
    return document.selection.createRange().text;
    }
    // firefox
    else if (window.navigator.userAgent.indexOf("Firefox") >= 1) {
    if (obj.files) {
    return obj.files.item(0).getAsDataURL();
    }
    return obj.value;
    }
    return obj.value;
    }
    }

    来源:互联网
    免责声明:如果侵犯了您的权益,请联系站长(1277306191@qq.com),我们会及时删除侵权内容,谢谢合作!

    最新评论

    QQ Archiver 手机版 小黑屋 福建二哥 ( 闽ICP备2022004717号|闽公网安备35052402000345号 )

    Powered by Discuz! X3.5 © 2001-2023

    快速回复 返回顶部 返回列表