我需要编写一个文件上传的组件(将上传文件类型限制为仅限PDF)。
我看过CQ有自己的上传文件对话框,但我不确定,我是否可以重复使用它们。
请告诉我,如果我可以开箱即用xtypes“smartfile”, “fileuploadfield”,“html5fileuploadfield”或“uploaddialogbutton” 限制为PDF文件。
或者我是否需要编写扩展其中一个xtypes的自定义组件?
我感谢所有的帮助。
修改
<div id='fi-form'></div>
<script>
CQ.Ext.onReady( function(){
var card = new CQ.Ext.Panel({
renderTo: 'fi-form',
title: 'Example Wizard',
layout:'card',
activeItem: 0, // make sure the active item is set on the container config!
bodyStyle: 'padding:15px',
defaults: {
// applied to each contained panel
border:false
},
// the panels (or "cards") within the layout
items: [{
id: 'card-0',
xtype: 'fileuploadfield',
emptyText: 'Select a PDF',
fieldLabel: 'Photo',
name: 'photo-path'
},{
id: 'card-1',
html: '<p>Step 2 of 3</p>'
},{
id: 'card-2',
html: '<h1>Congratulations!</h1><p>Step 3 of 3 - Complete</p>'
}]
});
});
</script>
以下是输出
有人可以告诉我那里的“浏览”按钮是什么?
谢谢你, 斯
答案 0 :(得分:0)
如果您正在谈论在对话框中提供上传选项,则可以。
您可以使用html5smartfile
xtype,然后添加mimeTypes
属性以指定允许上载的文件类型。您还可以配置ddAccept
属性以限制可以从内容查找器拖放的文件类型。
示例配置如下
<upload jcr:primaryType="cq:Widget"
fieldDescription="Accepts PDF files."
fieldLabel="Upload"
mimeTypes="application/pdf"
mimeTypesDescription="PDF Files"
name="./file"
sizeLimit="100"
xtype="html5smartfile"/>
此外,您可以使用sizeLimit
属性指定可上载的最大文件大小,并使用mimeTypesDescription
指定当文件无效时弹出的错误消息中允许的文件类型mime类型已上传。
请参阅Widgets API以了解有关可用配置的更多信息。