2016-04-28 3 views
0

Мне нужно включить элемент управления загрузкой стиля Bootstrap в моем приложении. Вложения файлов будут храниться в документе в richtextfield под названием «вложения». Использование Java для сохранения полей.Xpages Bootstrap Upload Control

Я просмотрел перечисленные ниже веб-сайты, а также то, что сделал Оливер Буссе, но я не могу найти его ссылку сейчас.

В конечном счете, я бы хотел, чтобы пользовательский контроль.

Я добавил папку bootstrapfileinput4 в свою папку WebContent.

enter image description here

Когда я запускаю следующий код XPage я получаю сообщение об ошибке.

enter image description here

XPage код:

<?xml version="1.0" encoding="UTF-8"?> 
<xp:view xmlns:xp="http://www.ibm.com/xsp/core" 
xmlns:xc="http://www.ibm.com/xsp/custom"> 
<xp:this.data> 
<xp:dominoDocument var="document1" formName="Contact"></xp:dominoDocument> 
</xp:this.data> 
<xp:this.resources> 
<xp:script src="/jQueryXSnippet.js" clientSide="true"></xp:script> 
</xp:this.resources> 
<script type="text/javascript" src="bootstrapfileinput4/js/fileinput.js"></script> 
<link rel="stylesheet" href="bootstrapfileinput4/css/fileinput.css" media="all" type="text/css" /> 

<xp:scriptBlock id="scriptBlockInitFile"> 
<xp:this.value> 
<![CDATA[ 
$(document).ready(
function() { 
$('input[type=file]').fileinput({ 
previewFileType: "image", 
browseClass: "btn btn-primary", 
browseLabel: "Browse", 
browseIcon: '<i class="glyphicon glyphicon-plus"></i>', 
removeClass: "btn btn-danger", 
removeLabel: "Delete", 
removeIcon: '<i class="glyphicon glyphicon-trash"></i>', 
uploadClass: "btn btn-info", 
uploadLabel: "Upload", 
uploadIcon: '<i class="glyphicon glyphicon-upload"></i>', 
}); 
} 
); 
]]> 
</xp:this.value> 
</xp:scriptBlock> 
<xc:ccLayoutBootstrap> 
<xp:this.facets> 
<xp:panel xp:key="facetMiddle"> 
<xp:br></xp:br> 
<div class="page-header"> 
<h1> 
FileInput 
<xp:span style="color:rgb(255,255,255)"></xp:span><small>Bootstrap FileInput Plugin</small> 
</h1> 
</div>  
<xp:fileUpload id="fileUpload1" 
value="#{document1.fileAttachment}"> 
<xp:this.attrs> 
<xp:attr name="accept" value="image/*" /> 
</xp:this.attrs> 
</xp:fileUpload> 
<xp:br></xp:br> 
<xp:fileDownload rows="30" id="fileDownload1" 
displayLastModified="true" value="#{document1.fileAttachment}" 
hideWhen="true" allowDelete="true"> 
</xp:fileDownload>  
<xp:button value="Save Document" id="button1" styleClass="btn btn-primary"> 
<xp:eventHandler event="onclick" submit="true" refreshMode="complete"> 
<xp:this.action> 
<xp:actionGroup> 
<xp:saveDocument></xp:saveDocument> 
<xp:openPage name="/BootstrapFileInput4.xsp"></xp:openPage> 
</xp:actionGroup> 
</xp:this.action> 
</xp:eventHandler> 
</xp:button> 
<xp:br></xp:br> 
</xp:panel> 
</xp:this.facets> 
</xc:ccLayoutBootstrap> 
</xp:view> 

ссылки, которые я использовал:

Bootstrap UI for XPages File Upload component

+0

Вы уверены, что загрузили bootstrapfileinput4/js/fileinput.js? Проверьте свойства сети и убедитесь, что она не возвращается 404. Возможно, вам потребуется добавить полный путь, включая папку и имя файла nsf, в тег src. –

+0

Пер, это то, что я изначально думал, но я проверил в Chrome и fileinput.js и fileinput.css загружены. –

+0

Можете ли вы запустить $ ('input [type = file]'). Fileinput() вручную в консоли после загрузки страницы? –

ответ

1

Я предполагаю, что это загрузчик проблема AMD. Проверьте, использует ли fileinput.js AMD, и если да, то удалите эту часть из js-файла (см., Например, this answer).

Смежные вопросы