ExtJs的文件上传功能官方的例子中并没有,但做网站的都知道,这个功能在十个系统中九个可能都需要这样的功能。废话少说,下面一起来分享一下ExtJs上传文件功能。
效果图1(上传前):
效果图2(上传后):
该程序包括三个文件,一个文件件。如下图
源代码:
upload.html
以下为引用的内容:
<html>
<head>
<title>Uploading</title>
<link rel="stylesheet" type="text/css" href="../../resources/css/ext-all.css"/>
<!-- GC -->
<!-- LIBS -->
<script type="text/javascript" src="../../adapter/ext/ext-base.js"></script>
<!-- ENDLIBS -->
<script type="text/javascript" src="../../ext-all.js"></script>
<script type="text/javascript" src="upload.js"></script>
<link rel="stylesheet" type="text/css" href="forms.css"/>
<!-- Common Styles for the examples -->
<link rel="stylesheet" type="text/css" href="../examples.css"/>
</head>
<body>
<script type="text/javascript" src="../examples.js"></script>
<!-- EXAMPLES -->
<h1>Upload with Forms</h1>
<p>The js is not minified so it is readable. See
<a href="upload.js">upload.js</a>.</p>
<p> </p>
<p><a href="javascript:window.location.reload();">reload</a></p>
</body>
</html>
|
Upload.js
以下为引用的内容:
Ext.QuickTips.init();
Ext.form.Field.prototype.msgTarget = 'side';
Ext.onReady(function() {
var form = new Ext.form.FormPanel({
baseCls: 'x-plain',
labelWidth: 80,
url:'upload.php',
fileUpload:true,
defaultType: 'textfield',
items: [{
xtype: 'textfield',
fieldLabel: 'File Name',
name: 'userfile',
inputType: 'file',
allowBlank: false,
blankText: 'File can\'t not empty.',
anchor: '90%' // anchor width by percentage
}]
});
var win = new Ext.Window({
title: 'Upload file',
width: 400,
height:200,
minWidth: 300,
minHeight: 100,
layout: 'fit',
plain:true,
bodyStyle:'padding:5px;',
buttonAlign:'center',
items: form,
buttons: [{
text: 'Upload',
handler: function() {
if(form.form.isValid()){
Ext.MessageBox.show({
title: 'Please wait',
msg: 'Uploading...',
progressText: '',
width:300,
progress:true,
closable:false,
animEl: 'loding'
});
form.getForm().submit({
success: function(form, action){
Ext.Msg.alert('Message from extjs.org.cn',action.result.msg);
win.hide();
},
failure: function(){
Ext.Msg.alert('Error', 'File upload failure.');
}
})
}
}
},{
text: 'Close',
handler:function(){win.hide();}
}]
});
win.show();
});
|
upload.php
以下为引用的内容:
<?php
//上传文件全称
$uploadfile =
"upload_files/".basename($_FILES['userfile']['name']);
$message =
"";
if (@move_uploaded_file($_FILES['userfile']['tmp_name'], $uploadfile))
{
$message = "File was successfully uploaded.";
}
else
{
$message = "Possible file upload attack!";
}
print
"{success:true,msg:'".$message."'}";
?>
|
还需要在当前目录创建一个文件夹upload_files,并将该文件夹设置为777(everyone 可读写).
演示地址:http://extjs.org.cn/extjs/examples/form/upload.html
由 LovelyLife
编辑
<script> editor.innerText = szEditor;</script>
分享到:
相关推荐
2、request.form()方法获取数据失效,请使用UpLoad.forms() 3、上传前请确认保存文件的文件夹有读写权限,若不可写则会出现"文件无法写入"错误,解决方法 http://dev.mo.cn/show.asp?id=81 二、调用方法 1、无组件类...
### 艾恩ASP_文件上传组件anupload #### 组件概述 艾恩ASP无组件上传组件(anupload)是一款专门为ASP环境设计的文件上传工具。该组件虽然自称为“无组件”,但实际上提供了丰富的功能与灵活性,使得在ASP环境下...
9. `test_upload.php` - 用于测试文件上传功能的PHP脚本,与表单中的上传文件框相关。 10. `templates` - 这可能是一个目录,包含了用于构建表单和页面的模板文件。 综合以上信息,这个压缩包提供了一个完整的解决...
总的来说,这个Windows Forms上传实例展示了如何在C#中处理文件选择和上传,并通过HTTP请求与Java后端服务进行通信。同时,它也涉及到了应用程序的分层架构,其中业务逻辑层和数据模型是关键组成部分。理解这些概念...
在Django框架中,表单(Form)是...总结起来,Django Forms提供了方便的方式来处理文件上传,包括定义表单、处理视图、创建模板以及配置URL路由。通过正确使用这些组件,你可以构建一个安全且功能完善的文件上传系统。
在HTML模板文件(如`upload_image.html`)中,使用Layui的组件创建上传表单。Layui的`upload`模块可以帮助我们实现图片预览和上传功能。记得在表单中加入CSRF令牌以保护你的站点。 ```html {% extends 'base....
当上传文件时,通常需要将文件内容作为表单数据的一部分。在MIME类型中,这是通过使用`multipart/form-data`编码实现的。每个文件部分包含文件名、类型和数据,用分隔符区分。 3. **文件流操作**: 在C#中,文件...
ASP.NET MVC 4 是微软开发的一个用于构建动态网站的框架,它基于模型-视图-控制器(MVC)设计模式,提供了更灵活的开发方式,相比传统的ASP.NET Web Forms更加面向现代Web应用的需求。在ASP.NET MVC 4中实现图片上传...
在本文中,我们将深入探讨如何使用C# ...以上就是关于“C# Winform表单上传文件”的详细讲解,希望对你理解和实现文件上传功能有所帮助。记得在实际开发中考虑错误处理和用户体验,以创建更健壮和用户友好的应用。
**Flask Forms: 基本表单及WTForms与文件上传** Flask是一个轻量级的Python Web框架,它提供了构建Web应用所需的基本功能,包括处理用户表单。在Flask应用中,我们通常使用WTForms库来帮助创建、验证和处理表单数据...
8. **拖放上传(Drag and Drop Upload)**:jQuery支持拖放功能,可以让用户直接从桌面拖动文件到表单中进行上传,提供了更直观的文件上传方式。 这些特效都是通过jQuery库以及可能的jQuery插件实现的,它们提升了...
在这个"ASP.NET-file-upload.rar"压缩包中,我们关注的核心知识点是ASP.NET中的文件上传功能,这是一个常见的需求,尤其在需要用户提交图片、文档或其他类型文件的Web应用中。 文件上传功能在ASP.NET中通常通过...
在实际使用中,通过调用`Upload.Forms()`和`Upload.Files()`方法,可以获取表单数据和文件对象,便于进一步处理。需要注意的是,HTML表单需设置`enctype="multipart/form-data"`和`method="post"`属性,否则上传将...
数据库(上传和保存表单可同时进行)、限制上传扩展名、限制上传大小、选择文件保存类型(原文件名和时间随机命名)等! 本类可以完整保存用户信息,包括同名称表单(和request.form一样以,为分割符进行保存),以及文件域的...
最后,创建一个HTML模板(如`upload_files.html`)来展示表单并处理文件上传: ```html <!DOCTYPE html> 上传文件 上传文件 {% csrf_token %} {{ form.as_p }} 上传"> ``` 此模板使用了Django的...
- 在`resources/js/upload.js`文件中添加代码,禁用表单提交按钮,防止用户重复提交。 ```javascript function disableSubmit() { var allInputs = document.forms[0].getElementsByTagName('input'); for (var...
现在,我们需要创建一个表单(Form)来处理文件上传。在 `uploadapp/forms.py` 文件中: ```python from django import forms class UploadFileForm(forms.Form): file = forms.FileField() ``` 接下来,我们要...
jQuery文件上传插件,用于表单角度,将数据存储在Mongo中。 BlueImp jquery-file-upload的包装器在很大程度上影响了该项目的Dominic Bottger的分支。 用法 npm install fng-jq-upload 要在您的node_modules的顶层...
3. **视图处理**:在视图中接收并处理表单数据,确保处理文件上传时使用POST请求,并验证表单数据: ```python from django.shortcuts import render, redirect from .forms import MyForm def upload_view...
创建一个自定义表单以处理文件上传。在`uploadapp/forms.py`中: ```python from django import forms from .models import FileUpload class UploadFileForm(forms.ModelForm): class Meta: model = ...