一、控制上传类型

附件组件默认没有提供可以设置上传类型的属性,如果需要限制上传的可以在附件组件的onStart事件中进行控制
在onStart事件中可以通过event.event.file.type可以获取到上传的文件类型,这个类型是用ContentType 类型控制如:
event.event.file.type = ‘application/msword’ 就是控制的.doc,其他相关类型的对应可以参考:http://www.3464.com/Data/HTTPContentType/
如果要直接判断doc、txt这样的类型可以通过获取的上传的文件名,然后截取后缀去判断,获取文件用event.event.file.name
判断类型不符合条件的可以用event.cancel = true终止上传
如下:

Model.prototype.attachment2Start = function(event){

        var type = event.event.file.type;
        if(type != 'application/msword'){//判断类型不为doc
         justep.Util.hint('文件类型比符合要求', this.getRootNode());
         event.cancel = true;//终止上传
        }
        
};

二、附件组件默认显示的文件图标,如何控制类型

控制显示的类型,可以在.w中组件的源码中进行控制,源码中是通过foreach循环遍历的附件的json传进行显示的,所以可以在这个循环中通过bind-visible控制显示的类型,如下控制的是只显示doc类型的

<div class="x-attachment-cell-tpl" data-bind="foreach:$attachmentItems"xid="div29">
         <div class="x-attachment-cell x-attachment-item"
data-bind='visible:$object.docName.get().split(".").pop().toLowerCase() == "doc"'

三、附件组件默认显示的文件图标个数

控制显示的类型,可以在.w中组件的源码中进行控制,源码中是通过foreach循环遍历的附件的json传进行显示的,所以可以在这个循环中加一个div通过索引控制bind-visible,如下控制只显示3个

   
<div data-bind="foreach:$attachmentItems" xid="div15">  
        <div data-bind='visible:$index()&lt;=2'>
           <div class="x-attachment-cell" xid="div16">