全称 mx.controls.UploadControl
命名空间 mx.controls
UploadControl
继承层次结构 UploadControlControl
源文件 ~\mx\scripts\controls\UploadControl.js
提供一个允许用户上传文件的类。特别注意:在FireFox浏览器下载中文名文件时会出现乱码。

示例 1

以下是一个文件上传编辑器如何初始化的示例。
JavaScript 代码
var upload = new mx.controls.UploadControl( { filePath : "D:\\testUpload\\inner\\", height : 200, baseUrl : mx.mappath("~/../mx/servlets/fileUpload") });

构造函数

名称 说明
UploadControl() 构建 UploadControl 类的新实例。

初始化函数

名称 说明
init()

方法

名称 说明
contains($p_target) 返回一个 Boolean 值,该值表示控件的容器中是否包含该 JQuery 对象。
createXMLHttpRequest() 提供一个方法,创建调用后台服务的 HTTP 对象。
dispose() 释放对象运行时动态生成的内容(属性、方法、事件)。
download(p_fileName) 提供一个方法,下载指定的文件。
getContext() 获取控件当前所属 Weblet 的上下文信息( WebletContext 类型)。
getEl() 获取控件容器对应的 HTML DOM 元素对象。
getUploadedNames() 提供一个方法,获取上传控件上传成功的文件名字。多个文件名用 “;” 分隔
hide() 隐藏控件,设置控件不可见。
moveTo(p_left, p_top) 移动控件到指定位置。@param p_left 一个数字,表示 css 样式的 left 属性。 @param p_top 一个数字,表示 css 样式的 top 属性。
setBorder(p_border) 设置控件的边框样式。@param p_border 一个字符串,表示css样式的 border 属性。
setBottom(p_bottom) 设置 bottom 字段的值。@param p_bottom 控件的下边界与父容器下边界的像素距离,可以是数字(如 50),也可以是字符串(如 50%)。
setCss(p_css) 设置 css 字段的值。 @param p_css 一个 JSON 对象,表示控件的 CSS 样式。
setCssClass(p_cssClass) 设置 cssClass 字段的值 @param p_cssClass 一个String 对象,样式classname
setDisplay(p_display) 设置 display 字段的值。@param p_display css 样式的 display 属性。
setEnabled(p_enabled) 设置 enabled 字段的值。
setHeight(p_height) 设置 height 字段的值。 注:子类UploadControl上传控件不支持百分比设置高度 @param p_height 控件的高度,可以是数字(如 100),也可以是字符串(如 “100%”)。
setLeft(p_left) 设置 left 字段的值。 @param p_left 控件的左边界与父容器左边界的像素距离,可以是数字(如 50),也可以是字符串(如 50%)。
setPadding(p_padding) 设置控件的内边距。@param p_padding 一个字符串,表示css样式的 padding 属性。
setPosition(p_position) 设置 position 字段的值。@param p_position 一个字符串,表示 css 样式的 position 属性。
setReadOnly(p_readOnly)
setRight(p_right) 设置 right 字段的值。@param p_right 控件的右边界与父容器右边界的像素距离,可以是数字(如 50),也可以是字符串(如 50%)。
setTop(p_top) 设置 top 字段的值。 @param p_top 控件的上边界与父容器上边界的像素距离,可以是数字(如 50),也可以是字符串(如 50%)。
setVisible(p_visible) 设置 visible 字段的值。@param p_visible 一个 Boolean 值,表示控件是否可见。
show() 显示控件,设置控件可见。
$(p_expression) 该方法与 me.$e.find(p_expression) 等同。
$wrap([p_obj]) 返回一个 JQuery 对象。

字段

名称 说明
alias 获取或设置一个字符串,表示控件的别名。
allowTypes 设置或获取一个字符串,表示允许上传的文件类型,多个扩展名用逗号隔开。值为 null 时表示允许上传所有文件。
baseUrl 获取或设置一个字符串,表示后台服务所在路径。MX 框架提供两个服务路径可供选择。 mx.mappath("~/../mx/servlets/fileUpload") 供管理指定目录下的文件时使用, mx.mappath("~/../mx/servlets/dataFileUpload") 供管理表单、表格对应的数据附件时使用。 用户可以根据需要使用自己的服务路径。
border 获取控件的边框样式。如“1px solid red”,表示边框的样式为 1 像素红色的实线。请使用 setBorder 方法设置该字段的值。
bottom 获取控件的下边界与父容器下边界的像素距离。请使用 setBottom 方法设置该字段的值。
colName 设置或获取一个字符串,表示上传控件在存储表单数据的表中对应的列名。 当控件类型为 form 时,此属性有值。
cssClass 指定css伪类名称,设置控件显示样式
display 获取控件的显示样式值。如“none”,表示隐藏控件; “block”表示强制作为块对象呈递。请使用 setDisplay方法设置该字段的值。
enableBrowserContextMenu 获取或初始化设置是否允许浏览器默认的上下文菜单。
enabled 获取控件是否可以对用户交互作出响应。如果该值为 true,则表示控件可以对用户交互作出响应;反之则不能。 请使用 setEnabled 方法设置该字段的值。@default true
eTag 获取控件的标签。
filePath 获取或设置一个字符串,表示上传文件在服务器上的保存路径。
filesLimit 设置或获取一个数字,表示允许上传的文件个数。为 0 时表示没有限制。
height 设置或获取控件的高度,不支持百分比设置高度
ignoreGlobalSet 设置需要忽略的全局属性设置;如:需要获取全局上传mx.globalUploadMode,只需设置 ignoreGlobalSet = ["globalUploadMode"] 既可
isVirtual 指示列是否虚拟,如果列是虚拟的话,将不会执行业务表的逻辑
layoutConfigs 获取或者设置一个 JSON 对象,该属性表示控件在父容器中的布局配置参数。该属性只有在控件父容器运用布局器才会生效。
left 获取控件的左边界与父容器左边界的像素距离。请使用 setLeft 方法设置该字段的值。
limitTypes 设置或获取一个字符串,表示禁止上传的文件类型,多个扩展名用逗号隔开。需要先满足 UploadControl.allowTypes
maxSize 获取或设置一个数字,表示上传文件的大小所允许的最大值,单位 “KB”。如果为“-1”表示无限制。
padding 获取控件的内边距。如“4px”表示上下左右的内边距均为 4 像素; “4px 2px 3px 1px”则表示上边距为 4 像素,右边距为 2 像素,下边距为 3 像素,左边距为 1 像素。请使用 setPadding 方法设置该字段的值。
parent 获取控件所属的父对象。
permissionID 获取或设置一个字符串,表示控件的权限标识。
pkVal 设置或获取一个字符串,表示上传控件所属数据的主键值。 当控件类型为 form 时,此属性有意义;若此时此属性没有值,控件不会响应点击事件。
position 获取控件位置样式值。请使用 setPosition 方法设置该字段的值。

该字段的可选值包括:

  • relative
  • absolute

primaryKey 设置或获取一个字符串,表示上传控件所属数据表的主键列名。 当控件类型为 form 时,此属性有值。
readOnly 设置或获取文件上传控件是否只读,true:只读,不能上传、添加删除文件,只能下载
right 获取控件的右边界与父容器右边界的像素距离。请使用 setRight 方法设置该字段的值。
tableName 设置或获取一个字符串,表示上传控件所属数据的表名。 当控件类型为 form 时,此属性有值。
top 获取控件的上边界与父容器上边界的像素距离。请使用 setTop 方法设置该字段的值。
totalMaxSize 获取或设置一个数字,表示所有上传文件的大小所允许的最大值,单位“KB”,如果为“-1”表示无限制.
type 设置或获取一个字符串,表示当前上传控件的类型。 当类型为 path 时,表示管理指定目录下的文件; 当类型为 form 时,表示管理表单对应的数据的附件。
udsParam 设置或获取文件上传控件udsParam,默认为null; 例如:me.udsParam = {comp:"公司1", des:"公司描述"};
uploadErrorMsg 上传失败时,提示信息。
uploadMode 设置或获取一个字符串,表示保存文件的方式。 当控件类型为 form 时,此属性有意义。

该字段可选的值包括:

  • file
  • blob
  • uds
  • ftp

vault 获取一个对象,表示上传组件对应的工具类。
visible 获取一个 Boolean 值,表示控件是否可见。如果该值为 true,则表示控件可见;反之则不可见。请使用 setVisible 方法设置该字段的值。@default true
width 获取控件的宽度,不能支持设置控件的宽度
$e 获取该控件的占位符,该占位符为一个 JQuery 对象。

事件

名称 说明
onallitemuploaded 所有文件上传成功后触发该事件
onclosed 当控件点击关闭按钮时,将触发该事件。
onitemuploaded 上传项上传之后触发该事件。
onitemuploading 上传项上传之前触发该事件。
onselectionchanged 当选择的文件改变时触发该事件。

构造函数详细信息

UploadControl() 方法

构建 UploadControl 类的新实例。

初始化函数详细信息

init() 方法


方法详细信息

contains($p_target) 方法

返回一个 Boolean 值,该值表示控件的容器中是否包含该 JQuery 对象。

参数

  • $p_target
    一个 JQuery 对象,或 JQuery 选择器对应的字符串(如“#container”),或 HTML DOM 元素。

继承自


createXMLHttpRequest() 方法

提供一个方法,创建调用后台服务的 HTTP 对象。

dispose() 方法

释放对象运行时动态生成的内容(属性、方法、事件)。

继承自


download(p_fileName) 方法

提供一个方法,下载指定的文件。

参数

  • p_fileName
    要下载的文件名。

getContext() 方法

获取控件当前所属 Weblet 的上下文信息( WebletContext 类型)。

继承自


getEl() 方法

获取控件容器对应的 HTML DOM 元素对象。

继承自


getUploadedNames() 方法

提供一个方法,获取上传控件上传成功的文件名字。多个文件名用 “;” 分隔

hide() 方法

隐藏控件,设置控件不可见。

继承自


moveTo(p_left, p_top) 方法

移动控件到指定位置。@param p_left 一个数字,表示 css 样式的 left 属性。 @param p_top 一个数字,表示 css 样式的 top 属性。

参数

  • p_left
    一个数字,表示 css 样式的 left 属性。
  • p_top
    一个数字,表示 css 样式的 top 属性。

继承自


setBorder(p_border) 方法

设置控件的边框样式。@param p_border 一个字符串,表示css样式的 border 属性。

参数

  • p_border
    一个字符串,表示css样式的 border 属性。

继承自


setBottom(p_bottom) 方法

设置 bottom 字段的值。@param p_bottom 控件的下边界与父容器下边界的像素距离,可以是数字(如 50),也可以是字符串(如 50%)。

参数

  • p_bottom
    控件的下边界与父容器下边界的像素距离,可以是数字(如 50),也可以是字符串(如 50%)。

继承自


setCss(p_css) 方法

设置 css 字段的值。 @param p_css 一个 JSON 对象,表示控件的 CSS 样式。

参数

  • p_css
    一个 JSON 对象,表示控件的 CSS 样式。 {@exclude mx.datacontrols.ScrollBar}

继承自


setCssClass(p_cssClass) 方法

设置 cssClass 字段的值 @param p_cssClass 一个String 对象,样式classname

参数

  • p_cssClass
    一个String 对象,样式classname {@exclude mx.datacontrols.ScrollBar}

继承自


setDisplay(p_display) 方法

设置 display 字段的值。@param p_display css 样式的 display 属性。

参数

  • p_display
    css 样式的 display 属性。

继承自


setEnabled(p_enabled) 方法

设置 enabled 字段的值。

参数

  • p_enabled

继承自


setHeight(p_height) 方法

设置 height 字段的值。 注:子类UploadControl上传控件不支持百分比设置高度 @param p_height 控件的高度,可以是数字(如 100),也可以是字符串(如 “100%”)。

参数

  • p_height
    控件的高度,可以是数字(如 100),也可以是字符串(如 “100%”)。

继承自


setLeft(p_left) 方法

设置 left 字段的值。 @param p_left 控件的左边界与父容器左边界的像素距离,可以是数字(如 50),也可以是字符串(如 50%)。

参数

  • p_left
    控件的左边界与父容器左边界的像素距离,可以是数字(如 50),也可以是字符串(如 50%)。 {@exclude mx.datacontrols.ComplexForm} {@exclude mx.datacontrols.DataGridSearchBox} {@exclude mx.datacontrols.DynamicForm} {@exclude mx.datacontrols.SkinDataForm}

继承自


setPadding(p_padding) 方法

设置控件的内边距。@param p_padding 一个字符串,表示css样式的 padding 属性。

参数

  • p_padding
    一个字符串,表示css样式的 padding 属性。

继承自


setPosition(p_position) 方法

设置 position 字段的值。@param p_position 一个字符串,表示 css 样式的 position 属性。

参数

  • p_position
    一个字符串,表示 css 样式的 position 属性。

继承自


setReadOnly(p_readOnly) 方法

参数

  • p_readOnly

setRight(p_right) 方法

设置 right 字段的值。@param p_right 控件的右边界与父容器右边界的像素距离,可以是数字(如 50),也可以是字符串(如 50%)。

参数

  • p_right
    控件的右边界与父容器右边界的像素距离,可以是数字(如 50),也可以是字符串(如 50%)。

继承自


setTop(p_top) 方法

设置 top 字段的值。 @param p_top 控件的上边界与父容器上边界的像素距离,可以是数字(如 50),也可以是字符串(如 50%)。

参数

  • p_top
    控件的上边界与父容器上边界的像素距离,可以是数字(如 50),也可以是字符串(如 50%)。 {@exclude mx.datacontrols.ComplexForm} {@exclude mx.datacontrols.DataGridSearchBox} {@exclude mx.datacontrols.DynamicForm} {@exclude mx.datacontrols.SkinDataForm}

继承自


setVisible(p_visible) 方法

设置 visible 字段的值。@param p_visible 一个 Boolean 值,表示控件是否可见。

参数

  • p_visible
    一个 Boolean 值,表示控件是否可见。

继承自


show() 方法

显示控件,设置控件可见。

继承自


$(p_expression) 方法

该方法与 me.$e.find(p_expression) 等同。

参数

  • p_expression

继承自


$wrap([p_obj]) 方法

返回一个 JQuery 对象。

参数

  • p_obj
    可选的。默认值为“me.$e”。一个 JQuery 对象,或继承自 Control 的控件,或字符串,或 HTML DOM 元素。 如果参数为 JQuery 对象,则返回本身; 如果参数为继承自 Control 的控件,则返回控件的 $e 对象; 如果参数为字符串,则返回以字符串为选择器的 JQuery 对象; 如果参数为空,则返回控件本身的 $e 对象。

继承自


字段详细信息

alias 字段

获取或设置一个字符串,表示控件的别名。

继承自


allowTypes 字段

设置或获取一个字符串,表示允许上传的文件类型,多个扩展名用逗号隔开。值为 null 时表示允许上传所有文件。

baseUrl 字段

获取或设置一个字符串,表示后台服务所在路径。MX 框架提供两个服务路径可供选择。 mx.mappath("~/../mx/servlets/fileUpload") 供管理指定目录下的文件时使用, mx.mappath("~/../mx/servlets/dataFileUpload") 供管理表单、表格对应的数据附件时使用。 用户可以根据需要使用自己的服务路径。

默认值

mx.mappath("~/../mx/servlets/fileUpload")

border 字段

获取控件的边框样式。如“1px solid red”,表示边框的样式为 1 像素红色的实线。请使用 setBorder 方法设置该字段的值。

继承自


bottom 字段

获取控件的下边界与父容器下边界的像素距离。请使用 setBottom 方法设置该字段的值。

继承自


colName 字段

设置或获取一个字符串,表示上传控件在存储表单数据的表中对应的列名。 当控件类型为 form 时,此属性有值。

cssClass 字段

指定css伪类名称,设置控件显示样式

继承自


display 字段

获取控件的显示样式值。如“none”,表示隐藏控件; “block”表示强制作为块对象呈递。请使用 setDisplay方法设置该字段的值。

继承自


enableBrowserContextMenu 字段

获取或初始化设置是否允许浏览器默认的上下文菜单。

继承自


enabled 字段

获取控件是否可以对用户交互作出响应。如果该值为 true,则表示控件可以对用户交互作出响应;反之则不能。 请使用 setEnabled 方法设置该字段的值。@default true

继承自

默认值

true

eTag 字段

获取控件的标签。

继承自

默认值

<div/>

filePath 字段

获取或设置一个字符串,表示上传文件在服务器上的保存路径。

filesLimit 字段

设置或获取一个数字,表示允许上传的文件个数。为 0 时表示没有限制。

height 字段

设置或获取控件的高度,不支持百分比设置高度

继承自


ignoreGlobalSet 字段

设置需要忽略的全局属性设置;如:需要获取全局上传mx.globalUploadMode,只需设置 ignoreGlobalSet = ["globalUploadMode"] 既可

isVirtual 字段

指示列是否虚拟,如果列是虚拟的话,将不会执行业务表的逻辑

默认值

false

layoutConfigs 字段

获取或者设置一个 JSON 对象,该属性表示控件在父容器中的布局配置参数。该属性只有在控件父容器运用布局器才会生效。

继承自


left 字段

获取控件的左边界与父容器左边界的像素距离。请使用 setLeft 方法设置该字段的值。

继承自


limitTypes 字段

设置或获取一个字符串,表示禁止上传的文件类型,多个扩展名用逗号隔开。需要先满足 UploadControl.allowTypes

maxSize 字段

获取或设置一个数字,表示上传文件的大小所允许的最大值,单位 “KB”。如果为“-1”表示无限制。

padding 字段

获取控件的内边距。如“4px”表示上下左右的内边距均为 4 像素; “4px 2px 3px 1px”则表示上边距为 4 像素,右边距为 2 像素,下边距为 3 像素,左边距为 1 像素。请使用 setPadding 方法设置该字段的值。

继承自


parent 字段

获取控件所属的父对象。

继承自


permissionID 字段

获取或设置一个字符串,表示控件的权限标识。

继承自


pkVal 字段

设置或获取一个字符串,表示上传控件所属数据的主键值。 当控件类型为 form 时,此属性有意义;若此时此属性没有值,控件不会响应点击事件。

position 字段

获取控件位置样式值。请使用 setPosition 方法设置该字段的值。

该字段的可选值包括:

  • relative
  • absolute

继承自


primaryKey 字段

设置或获取一个字符串,表示上传控件所属数据表的主键列名。 当控件类型为 form 时,此属性有值。

readOnly 字段

设置或获取文件上传控件是否只读,true:只读,不能上传、添加删除文件,只能下载

默认值

false

right 字段

获取控件的右边界与父容器右边界的像素距离。请使用 setRight 方法设置该字段的值。

继承自


tableName 字段

设置或获取一个字符串,表示上传控件所属数据的表名。 当控件类型为 form 时,此属性有值。

top 字段

获取控件的上边界与父容器上边界的像素距离。请使用 setTop 方法设置该字段的值。

继承自


totalMaxSize 字段

获取或设置一个数字,表示所有上传文件的大小所允许的最大值,单位“KB”,如果为“-1”表示无限制.

type 字段

设置或获取一个字符串,表示当前上传控件的类型。 当类型为 path 时,表示管理指定目录下的文件; 当类型为 form 时,表示管理表单对应的数据的附件。

udsParam 字段

设置或获取文件上传控件udsParam,默认为null; 例如:me.udsParam = {comp:"公司1", des:"公司描述"};

默认值

false

uploadErrorMsg 字段

上传失败时,提示信息。

默认值

null

uploadMode 字段

设置或获取一个字符串,表示保存文件的方式。 当控件类型为 form 时,此属性有意义。

该字段可选的值包括:

  • file
  • blob
  • uds
  • ftp


vault 字段

获取一个对象,表示上传组件对应的工具类。

visible 字段

获取一个 Boolean 值,表示控件是否可见。如果该值为 true,则表示控件可见;反之则不可见。请使用 setVisible 方法设置该字段的值。@default true

继承自

默认值

true

width 字段

获取控件的宽度,不能支持设置控件的宽度

继承自


$e 字段

获取该控件的占位符,该占位符为一个 JQuery 对象。

继承自


事件详细信息

onallitemuploaded 事件

所有文件上传成功后触发该事件

onclosed 事件

当控件点击关闭按钮时,将触发该事件。

onitemuploaded 事件

上传项上传之后触发该事件。

onitemuploading 事件

上传项上传之前触发该事件。

参数

  • cancel
    可通过设置 cancel 参数为 true 来取消当前操作。默认为 false。
  • item
    上传项对象,其 setUdsParam 方法参加 DragUploadItem.setUdsParam 方法。

onselectionchanged 事件

当选择的文件改变时触发该事件。

参数

  • item
    一个对象,表示当前选中的文件信息。如果是未上传文件,item 包含未上传文件信息,如{name:"", path:""}; 如果是已上传文件,包含的是服务端文件信息,如{attName:"",attSize:"", fileId:""}。