全称 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) 移动控件到指定位置。
refreshPk(p_items, p_pkColName) 请参见 {mx.editors.FileEditor.refreshPk} 。
resizeTo(p_width, p_height) 重设控件的大小。
setBorder(p_border) 设置控件的边框样式。
setBottom(p_bottom) 设置 bottom 字段的值。
setCss(p_css) 设置 css 字段的值。
setCssClass(p_cssClass) 设置 cssClass} 字段的值
setDisplay(p_display) 设置 display 字段的值。
setEnabled(p_enabled) 设置 enabled 字段的值。
setHeight(p_height) 设置 height 字段的值。
setLeft(p_left) 设置 left 字段的值。
setPadding(p_padding) 设置控件的内边距。
setPosition(p_position) 设置 position 字段的值。
setRight(p_right) 设置 right 字段的值。
setTop(p_top) 设置 top 字段的值。
setVisible(p_visible) 设置 visible 字段的值。
setWidth(p_width) 设置 width 字段的值。
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。注:该"block"值不能在ComplexGrid控件中使用。 方法设置该字段的值。
enabled 获取控件是否可以对用户交互作出响应。如果该值为 true,则表示控件可以对用户交互作出响应;反之则不能。 请使用 setEnabled 方法设置该字段的值。
eTag 获取控件的标签。
fileNames 获取一个字符串,表示当前已经上传的文件名,多个文件名用分号分隔。
filePath 获取或设置一个字符串,表示上传文件在服务器上的保存路径。
filesLimit 设置或获取一个数字,表示允许上传的文件个数。为 0 时表示没有限制。
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 获取控件位置样式值。如“static”,表示无特殊定位,对象遵循 HTML 定位规则。请使用 setPosition 方法设置该字段的值。

该字段的可选值包括:

  • static
  • relative
  • absolute
  • fixed

primaryKey 设置或获取一个字符串,表示上传控件所属数据表的主键列名。 当控件类型为 form 时,此属性有值。
right 获取控件的右边界与父容器右边界的像素距离。请使用 setRight 方法设置该字段的值。
tableName 设置或获取一个字符串,表示上传控件所属数据的表名。 当控件类型为 form 时,此属性有值。
top 获取控件的上边界与父容器上边界的像素距离。请使用 setTop 方法设置该字段的值。
type 设置或获取一个字符串,表示当前上传控件的类型。 当类型为 path 时,表示管理指定目录下的文件; 当类型为 form 时,表示管理表单对应的数据的附件。
uploadMode 设置或获取一个字符串,表示保存文件的方式。 当控件类型为 form 时,此属性有意义。

该字段可选的值包括:

  • file
  • blob
  • uds

vault 获取一个对象,表示上传组件对应的工具类。
visible 获取一个 Boolean 值,表示控件是否可见。如果该值为 true,则表示控件可见;反之则不可见。请使用 setVisible 方法设置该字段的值。
width 获取控件的宽度。可以是数字(如 500)、字符串(如“500px”或“50%”)。请使用 setWidth 方法设置该字段的值。
$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) 方法

移动控件到指定位置。

参数

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

继承自


refreshPk(p_items, p_pkColName) 方法

请参见 {mx.editors.FileEditor.refreshPk} 。

参数

  • p_items
  • p_pkColName

resizeTo(p_width, p_height) 方法

重设控件的大小。

参数

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

继承自


setBorder(p_border) 方法

设置控件的边框样式。

参数

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

继承自


setBottom(p_bottom) 方法

设置 bottom 字段的值。

参数

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

继承自


setCss(p_css) 方法

设置 css 字段的值。

参数

  • p_css
    一个 JSON 对象,表示控件的 CSS 样式。

继承自


setCssClass(p_cssClass) 方法

设置 cssClass} 字段的值

参数

  • p_cssClass
    一个String 对象,样式classname

继承自


setDisplay(p_display) 方法

设置 display 字段的值。

参数

  • p_display
    css 样式的 display 属性。

继承自


setEnabled(p_enabled) 方法

设置 enabled 字段的值。

参数

  • p_enabled

继承自


setHeight(p_height) 方法

设置 height 字段的值。

参数

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

继承自


setLeft(p_left) 方法

设置 left 字段的值。

参数

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

继承自


setPadding(p_padding) 方法

设置控件的内边距。

参数

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

继承自


setPosition(p_position) 方法

设置 position 字段的值。

参数

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

继承自


setRight(p_right) 方法

设置 right 字段的值。

参数

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

继承自


setTop(p_top) 方法

设置 top 字段的值。

参数

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

继承自


setVisible(p_visible) 方法

设置 visible 字段的值。

参数

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

继承自


setWidth(p_width) 方法

设置 width 字段的值。

参数

  • p_width
    控件的高度,可以是数字(如 500)、字符串(如“500px”或“50%”).

继承自


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。注:该"block"值不能在ComplexGrid控件中使用。 方法设置该字段的值。

继承自


enabled 字段

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

继承自

默认值

true

eTag 字段

获取控件的标签。

继承自

默认值

<div/>

fileNames 字段

获取一个字符串,表示当前已经上传的文件名,多个文件名用分号分隔。

filePath 字段

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

filesLimit 字段

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

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 字段

获取控件位置样式值。如“static”,表示无特殊定位,对象遵循 HTML 定位规则。请使用 setPosition 方法设置该字段的值。

该字段的可选值包括:

  • static
  • relative
  • absolute
  • fixed

继承自


primaryKey 字段

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

right 字段

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

继承自


tableName 字段

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

top 字段

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

继承自


type 字段

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

uploadMode 字段

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

该字段可选的值包括:

  • file
  • blob
  • uds


vault 字段

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

visible 字段

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

继承自

默认值

true

width 字段

获取控件的宽度。可以是数字(如 500)、字符串(如“500px”或“50%”)。请使用 setWidth 方法设置该字段的值。

继承自


$e 字段

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

继承自


事件详细信息

onallitemuploaded 事件

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

onclosed 事件

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

onitemuploaded 事件

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

onitemuploading 事件

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

参数

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

onselectionchanged 事件

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

参数

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