2013-10-09 4 views
2

Я безуспешно пытаюсь отключить проверку на стороне клиента для Comjo Box Dojo. Я добавил атрибут dojo «required» и установил его в false, но это все еще не работает. Я хочу, чтобы проверка на стороне сервера была включена, поэтому я установил require = "true". Может ли кто-нибудь увидеть, какие изменения необходимо внести в код ниже?XPages - отключить проверку на стороне клиента для Dojo Combo box

<xe:djComboBox id="djComboBox1" required="true" disableClientSideValidation="true"> 
<xe:this.dojoAttributes> 
<xp:dojoAttribute name="required" value="false"> 
</xp:dojoAttribute> 
</xe:this.dojoAttributes> 
<xp:selectItem itemLabel="" /> 
<xp:selectItem itemLabel="Apples" /> 
<xp:selectItem itemLabel="Oranges" /> 
<xp:selectItem itemLabel="Pears" /> 
<xp:selectItem itemLabel="Bananas" /> 
<xp:selectItem itemLabel="Plums" /> 
</xe:djComboBox> 
+0

Что это привязана к какому? –

ответ

5

Попытка переопределить формулу проверки на стороне клиента вашего выпадающий список с помощью метода, который всегда возвращает истинное:

<xe:djComboBox 
    id="djComboBox1" 
    required="true" 
    validatorExt="return true;"> 
    <xp:selectItem itemLabel="" /> 
    <xp:selectItem itemLabel="Apples" /> 
    <xp:selectItem itemLabel="Oranges" /> 
    <xp:selectItem itemLabel="Pears" /> 
    <xp:selectItem itemLabel="Bananas" /> 
    <xp:selectItem itemLabel="Plums" /> 
</xe:djComboBox> 
+0

Большое спасибо. Это действительно хорошее решение. Проверка на стороне клиента отключена, но проверка на стороне сервера продолжает работать. –

0

Насколько я знаю, вы не можете отключить на стороне клиента проверки на Dojo управления формы. Dojo - это клиентская платформа, а элементы управления просто упрощают реализацию версий Dojo. Валидация является частью кода JavaScript на стороне клиента Dojo, но ничего из среды выполнения XPages на стороне сервера. Поэтому проверка предназначена для работы на стороне клиента, а не на стороне сервера.

Стандартный элемент управления ComboBox даст вам то, что вы хотите. Возможно, вы сможете воспроизвести стиль доджо-версии, указав соответствующие стили, используя, например, FireBug.

Другой вариант - сделать валидацию в вашей кнопке сохранения. Существует XSnippet, который поможет с маркировкой элементов управления недействительными и отправляет сообщения xp: message или xp: message http://openntf.org/XSnippets.nsf/snippet.xsp?id=ssjs-form-validation-that-triggers-errormessage-controls. Но это не даст стиль Dojo error, который снова является частью кода Dojo, а не является частью среды выполнения XPages.

+0

Если вы установили свойство * required * элементов формы Dojo в значение * false *, проверка на стороне клиента будет отключена. –

+0

Я установил требуемое свойство как false, как вы можете видеть выше, но без достижения желаемого результата. –

+0

@TonyGuiheen: Нет. В коде выше * required * установлено значение * true *, а не * false *. –

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