2017-01-25 11 views
1

Я новичок в бутстрапе, я пытался создать Xpage с помощью BootstrapValidator, чтобы проверить входной текст, но он не работает, под источником кода, мы можем помочь мне найти решение!BootstrapValidator не работает с xpages?

<?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.resources> 
    <xp:styleSheet href="/bootstrapValidator/css/bootstrap.css"></xp:styleSheet> 
    <xp:styleSheet href="/bootstrapValidator/css/bootstrapValidator.css"></xp:styleSheet> 
    <xp:script src="/JQueryXSnippet.js" clientSide="true"></xp:script> 
    <xp:script src="/bootstrapValidator/js/bootstrap.min.js" clientSide="true"> </xp:script> 
    <xp:script src="/bootstrapValidator/js/bootstrapValidator.js" clientSide="true"></xp:script> 
    </xp:this.resources> 
       <div class="col-md-5"> 
       <xp:inputText id="username" title=" username"></xp:inputText> 
</div> 

<xp:scriptBlock id="scriptBlock1"> 
<xp:this.value><![CDATA[$(document).ready(
function() { 
     $("#{id:username}").bootstrapValidator({ 
     message: 'This value is not valid', 
     feedbackIcons: { 
      valid: 'glyphicon glyphicon-ok', 
      invalid: 'glyphicon glyphicon-remove', 
      validating: 'glyphicon glyphicon-refresh' 
     }, 
     fields: { 
      username: { 
       message: 'The username is not valid', 
       validators: { 
        notEmpty: { 
         message: 'The username is required and can\'t be empty' 
        }, 
        stringLength: { 
         min: 6, 
         max: 30, 
         message: 'The username must be more than 6 and less than 30 characters long' 
        }, 
        regexp: { 
         regexp: /^[a-zA-Z0-9_\.]+$/, 
         message: 'The username can only consist of alphabetical, number, dot and underscore' 
        } 
       } 
      } } }); 
       ]]></xp:this.value> 
</xp:scriptBlock> 

      </xp:view> 
+0

Не могли бы вы проверить консоль javascript на наличие ошибок? –

+0

спасибо Oliver Busse, но у меня нет никакой ошибки, когда я проверяю консоль java-скрипта! – user7329277

ответ

3

XPages compatible jQuery selector x$ Используйте вместо родного селектора JQuery $.

Также старайтесь использовать XSP.addOnLoad() вместо (document).ready().

Кроме того, поле XPages xp: inputText, называемое «username», имеет идентификатор в браузере, называемый «view: _id1: _id2: _id8: username». Таким образом, это не называется «имя пользователя», как указано в определении полей для bootstrapValidator. Поэтому bootstrapValidator не может найти это поле. Попробуйте добавить это в свой скриптBlock вместо "username: {":

#{id:username}: { 
+0

Спасибо за Henrik Lausten, я изменил функцию, и я использовал селектор x $ jQuery для XPages insted jquery: user7329277

+0

ОК, следующая проблема, скорее всего, относится к« username: »в конфигурации bootstrapValidator. правильное имя стороны на стороне поля –

+0

Я следую этому руководству http://twitterbootstrap.org/bootstrap-form-validation/ im 'не понимаю, что вы подразумеваете под именем клиента? – user7329277