O2OA API

Class

Attachment

Extends

Attachment 附件组件。

Usable Range

Process CMS

Example

//可以在脚本中获取该组件
//方法1:
var attachment = this.form.get("name"); //获取组件
//方法2
var attachment = this.target; //在组件事件脚本中获取

Source

Members

attachmentControllerMWF.xApplication.process.Xform.AttachmentController

附件容器.

Type

  • MWF.xApplication.process.Xform.AttachmentController

Example

var attachmentController = this.form.get("fieldId").attachmentController; //获取附件容器
var attachmentList = attachmentController.attachments; //获取所有的附件
var attachmentData = attachmentList[0].data; //获取第一个附件的数据

Source

jsonJsonObject

组件的配置信息,比如id,类型,是否只读等等。可以在组件的queryLoad事件里修改该配置来对组件做一些改变。

Type

  • JsonObject

Example

//可以在脚本中获取该组件
var json = this.form.get("fieldId").json; //获取组件对象
var id = json.id; //获取组件的id
var type = json.type; //获取组件的类型,如Textfield 为文本输入组件,Select为下拉组件

//在组件queryLoad事件里设置组件只读。
//当前组件的queryLoad事件运行时还没有在form里注册,通过this.form.get("fieldId")不能获取到当前组件,需要用this.target获取。
var json = this.target.json;
json.isReadonly = true; //设置组件为只读。

Source

parentLineMWF.xApplication.process.Xform.Datatemplate.Line|MWF.xApplication.process.Xform.DatatablePC.Line|MWF.xApplication.process.Xform.DatatableMobile.Line

当前组件在数据表格或者数据模板中时,可以通过此属性获取所在行(条目)对象.

Type

  • MWF.xApplication.process.Xform.Datatemplate.Line | MWF.xApplication.process.Xform.DatatablePC.Line | MWF.xApplication.process.Xform.DatatableMobile.Line

Example

//获取当前组件所在数据模板/数据表格的行(条目)对象
var line = this.target.parentLine;
//获取当前字段所在行下标
var index = line.getIndex();
//获取当前字段所在条目的subject字段的值
var data = line.getModule("subject").getData();
//设置当前字段所在条目的subject字段的值
line.getModule("subject").setData("test1");

Source

Methods

getData() → {StringArray|Null}

获取当前组件所有附件的标题.如果没有附件返回null

Returns

  • StringArray Null

    附件标题.

Example

var getAttachmentNames = this.form.get("name").getData();

Source

setData(data)

为组件重新设置附件,该附件必须已经上传。

Parameters

  • data Array

    .

    [{
        "id": "56c4e86f-a4c8-4cc2-a150-1a0d2c5febcb",   //附件ID
        "name": "133203a2-92e6-4653-9954-161b72ddb7f9.png", //附件名称
        "extension": "png",                             //附件扩展名
        "length": 43864,                                //附件大小
        "person": "xx@huqi@P",                          //附件上传人
        "lastUpdateTime": "2018-09-27 15:50:34",        //最后的修改时间
        "lastUpdatePerson": "xx@huqi@P",                //最后的修改人
        "activity": "e31ad938-c495-45a6-8d77-b8a9b61a165b", //附件上传的活动ID
        "activityName": "申请人",                           //附件上传的活动名称
        "activityType": "manual",                           //附件上传的活动类型
        "site": "$mediaOpinion",                        //附件存储位置(一般用于区分附件在哪个表单元素中显示)
        "type": "image/png",                             //附件类型(contentType)
        "control": {}
    }]

Source

getSource(typeopt) → {Source|SubSource|SubSourceItem}

当前组件在数据源组件中时,可以通过此方法获取所在的上级数据源/子数据源/子数项组件.

Parameters

  • type String <optional>

    需要获取的类型,"source"为表示数据源,"subSource"表示子数据源,"subSourceItem"表示子数据项组件。 如果该参数省略,则获取离当前组件最近的上述组件。

Returns

  • Source SubSource SubSourceItem

Example

var source = this.target.getSource(); //获取当前组件的所在子上级数据源/子数据源/子数项组件.
var data = source.data; //获取数据

var source = this.form.get("fieldId").getSource("source"); //获取数据源组件
var data = source.data; //获取数据

Source

getParentModule(typeopt, validateFunctionopt) → {MWF.xApplication.process.Xform.$Module}

获取当前组件所在的祖先组件.

Parameters

  • type String <optional>

    需要获取的组件类型。 如果该参数省略,则获取离当前组件最近的祖先组件。type有效值如下:

    form- 表单
    common- 通用组件
    datatable- 数据表格
    datatableline- 数据表格行
    datatemplate- 数据模板
    datatemplateline- 数据模板行
    div- 容器组件
    elcommon- Element通用组件
    elcontainer- Element容器组件
    subform- 子表单
    source- 数据源组件
    subsource- 子数据源
    subsourceitem- 子数据项组件
    tab- 分页组件
    tabpage- 分页组件的某个分页
    table- 表格
    tabletd- 单元格
    widget- 部件
  • validateFunction function <optional>

    进一步校验,参数为获取到匹配到类型的组件,返回false继续往上取对应类型的组件,返回true返回该组件。

Returns

Example

var module = this.target.getParentModule(); //获取最近的祖先。

var datatemplateLine = this.target.getParentModule("datatemplateline"); //获取当前组件所在的数据模板行.

var module = this.target.getParentModule(null, function(module){
    return module.json.id === "div_1";
}); //获取当前组件id为div_1的父组件。

Source

Events

queryLoadController

附件容器(this.target.attachmentController)初始化之前触发,可以通过this.event获取附件容器的选项。

loadController

附件容器(this.target.attachmentController)初始化之后,加载之前触发。

postLoadController

附件容器(this.target.attachmentController)加载之后触发,但这时还未加载具体的附件。

afterLoad

附件组件(this.target)加载完成后触发。这时候附件容器和每个附件都已加载完成。

beforeLoadAttachment

加载每个附件前触发。本事件中可以通过this.event获取加载的附件对象

loadAttachment

加载每个附件后触发。本事件中可以通过this.event获取加载的附件对象

beforeUpload

附件上传前触发。本事件中可以通过this.event获取上传的文件数组

upload

附件上传后触发。本事件中可以通过this.event获取上传附件的数据

delete

删除附件前触发。本事件中可以通过this.event获取被删附件的数据

afterDelete

删除附件后触发。本事件中可以通过this.event获取被删附件的数据

change

附件有变化的时候会被触发,包括上传、替换、删除、排序

download

下载附件后触发。本事件中可以通过this.event获取被下载附件对象

open

打开附件后触发。本事件中可以通过this.event获取被打开附件对象

select

选中附件后触发。本事件中可以通过this.event获取被选中的附件对象

unselect

取消选中附件后触发。本事件中可以通过this.event获取被取消选中的附件对象

results matching

    No results matching ''