o2oa api: attachment | o2oa开发平台-游戏厅捕鱼达人

class

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

    需要获取的类型,"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

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

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

    进一步校验,参数为获取到匹配到类型的组件,返回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获取附件容器的选项。

see

loadcontroller

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

see

postloadcontroller

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

see

afterload

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

see

beforeloadattachment

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

see

loadattachment

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

see

beforeupload

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

see

upload

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

see

delete

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

see

afterdelete

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

see

change

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

see

download

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

see

open

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

see

select

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

see

unselect

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

see

网站地图