上传

最后更新于:2022-04-01 22:23:58

# 上传 允许用户通过文件表单或占位符域来上传文件 ## 用法 这个Javascript组件运用了最新的 XMLHttpRequest Level 2 规范,提供了通过包含上传进度条的Ajax进行文件上传追踪的功能。本组件提供了两种上传文件的方式: `select` 和 `drop`。 `select` 请求只能被用在`<input type="file">` 元素中,而 `drop`基本可以用在任何元素,通过从桌面将文件拖拽到指定元素就能轻松实现上传。记住,本组件并不在服务器上处理文件上传。 注意 使用此组件需要额外添加 `upload.css` 文件,在`css/components`文件夹中。此组件需要额外添加 `upload.js` 文件,在`js/components`文件夹中。 上传组件需要根据你的要求单独进行实施。在我们的例子中,我们使用[占位符](placeholder.html)和[文件表单](form-file.html),同时使用了`drop` 和 `select`请求。另外,还是用了[进度条](progress.html)来显示上传进度。 ### Example ![](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/2016-05-12_57346f429fd22.jpg) ### Markup ```
Info text... Select a file.
...
``` * * * ### JavaScript 为了创建 `select` 和 `drop` 上传监听器,你需要使用目标元素和选项来实例化每个上传class,以定义回调和其他有用的设置。 ``` ``` * * * ## JavaScript 选项 | 选项 | 可用值 | 默认值 | 描述 | | --- | --- | --- | --- | | `action` | string | '' | 上传的目标URL | | `single` | boolean | true | 逐一进行文件发送 | | `param` | string | files[] | 传递查询名称 | | `params` | JSON Object | {} | 额外的请求参数 | | `allow` | string | *.* | 文件过滤器 | | `filelimit` | integer | false | 文件上传数量限制 | | `type` | (text | json) | text | 来自服务器的响应类型 | ### 回调事件 | 名称 | 参数 | | --- | --- | | `before` | settings, files | | `beforeAll` | files | | `beforeSend` | xhr | | `progress` | percent | | `complete` | response, xhr | | `allcomplete` | response, xhr | | `notallowed` | file, settings | | `loadstart` | event | | `load` | event | | `loadend` | event | | `error` | event | | `abort` | event | | `readystatechange` | event |
';