> 웹 프론트엔드 > JS 튜토리얼 > Extjs에서 업로드한 이미지를 미리 볼 수 없는 문제에 대한 해결 방법_extjs

Extjs에서 업로드한 이미지를 미리 볼 수 없는 문제에 대한 해결 방법_extjs

WBOY
풀어 주다: 2016-05-16 17:55:10
원래의
1453명이 탐색했습니다.
코드 복사 코드는 다음과 같습니다.

{
너비: 450,
fileUpload : true,
fieldLabel: '이미지 선택',
항목: [{
xtype: 'textfield',
id: 'up_forth',
name: 'up_forth',
inputType: ' file',
width: 300
}]
}

미리보기 상자
코드 복사 코드는 다음과 같습니다:

{
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를 나타냅니다. 이 메소드를 프로그램에서 미리 보고 등록하기만 하면 됩니다. (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 = "progid:DXImageTransform.Microsoft.AlphaImageLoader(sizingMethod = scale)";
imgDiv.filters.item("DXImageTransform.Microsoft.AlphaImageLoader").src =
newPreview. appendChild(imgDiv);
}
},
}, this)
}

//이미지 주소 가져오기
function getFullPath(obj) {
if (obj) {
// 즉
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; .값;
}
}

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿