Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/extjs/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 删除已在js中上载的文件_Javascript_Extjs_Extjs4 - Fatal编程技术网

Javascript 删除已在js中上载的文件

Javascript 删除已在js中上载的文件,javascript,extjs,extjs4,Javascript,Extjs,Extjs4,我有一个.js文件,你可以上传一个或多个文件。我还需要能够删除文件后,它已经上传。我还不太熟悉这个代码 以下是上传的代码: onChooseStepImageClicked: function(btn, e){ var form = btn.up('form'), grid = this.getGridProcess(), selectedRecord = grid.getSelectionModel().getLastSelected(), processid = se

我有一个.js文件,你可以上传一个或多个文件。我还需要能够删除文件后,它已经上传。我还不太熟悉这个代码

以下是上传的代码:

onChooseStepImageClicked: function(btn, e){
var form = btn.up('form'),
    grid = this.getGridProcess(),
    selectedRecord = grid.getSelectionModel().getLastSelected(),
    processid = selectedRecord.get('processid'),
    win = Ext.create('Ext.window.Window',{
        title:'Image',
        modal:true, constrain:true, stateful:true,
        width:600, height:400,
        layout:'fit',
        items:[
            {
            border:false,
            xtype:'plupload',
            _url : 'data/upload.processimagemap.php',
            _resize : {width : 600, height : 600, quality : 90},
            _unique_names : false,
            _multi_selection : false,
            _filters : [{title : "Image files", extensions : "jpg,jpeg,gif,png"}]
            }
             ],
        buttons:[
            {text:'Upload', handler:function(btn){
            var win = btn.up('window'),
                uploader = win.down('plupload').uploader;
                if (uploader.files && uploader.files.length > 0) {
                uploader.settings.multipart_params = {processid:processid};
                uploader.processid = processid;
                uploader.form = form;
                uploader.win = win;
                uploader.bind('UploadComplete', function(up, files) {
                up.form.doLoad(processid);
                uploader.destroy();
                up.win.close();
            });
            uploader.start();
        }else{
        Ext.Msg.alert('','Please select a file to upload.');
        }
    }},
    {text:'Close', handler:function(){ win.close(); }}
    ],
    listeners:{
        beforeclose:function(win){
          win.down('plupload').uploader.destroy();
        }
    }
});
win.show();
},


{

title:'Image',
layout: 'fit',
border: false,
items: {
disabled: (canEditProcess) ? false : true,
    xtype:'form',
formId:'form_step_image',
    tbar:[{iconCls:'image_add', text:'Choose Image', name:'choose_step_image'}, {iconCls:'image_add', text:'Remove Image', name:'remove_step_image'}],
border:false,
autoScroll:true,
bodyPadding:20,
items:[{xtype:'image', src:'', name:'step_image'}],
doLoad:function(processid){
       var f = this, formImg = f.down('image');
   f.getForm().load({
   url:'data/load.processimage.php',
   params:{processid: processid},
   success:function(f,a){
   var data = Ext.JSON.decode(a.response.responseText);
    formImg.setSrc(data.data.image);
   }
     });
    }
  }
},
并已:

 'button[name=choose_step_image]': {
click: this.onChooseStepImageClicked
 },

 'button[name=remove_step_image]': {
click: this.onRemoveStepImageClicked
 },
我该如何删除刚上传的文件? 我还不太熟悉js,这有点高级:
谢谢

看来你是在处理Ext.JS而不是Ember.JS?您是否有成功上传后可以返回的ID或文件名?如果您可以提供一个获取此参数集并调用后端以删除该文件(由其文件名/id标识)的方法…我还有按钮所在的代码,请参见OPI。我建议您更改标记并用extjs或extjs4替换ember.js。我猜您使用Ext.js 4,对吗?只是为了把你的问题标记正确。至于从何处获取文件名/id:后端被要求将图像存储在您发布的未命名对象的doLoad函数中。因此,如果您在成功操作时从后端返回上载图像的文件名/id,您可以在成功回调中访问它。。。