У меня есть простая форма с некоторым полем, я просто хочу проверить свое поле на стороне клиента, поэтому я использую и работаю над событием размытия.
проблема в том, что когда я отправляю форму, отображается сообщение об ошибке, и форма отправляется
Я пытаюсь проверить отправку формы, но как я могу узнать, какая проверка не удалась
<aui:form name="myForm" action="<%=uploadPromotionURL %>" method="post" enctype="multipart/form-data">
<aui:input name="promotionName" label="Promotion Name">
<aui:validator name="required" errorMessage="This field can not be empty"/>
</aui:input>
<aui:input name="promotionDesc" label="Promotion Description"/>
<aui:input type="file" name="offerImages" label="Promotion Image" multiple="multiple" accept="image/*" onchange="setUploadSize(this)">
<aui:validator name="acceptFiles">'jpg,png,tif,gif,jpeg'</aui:validator>
<aui:validator name="required" errorMessage="Please chhose offer"/>
<aui:validator name="custom" errorMessage="File size should not be more than 5Mb">
function(val,node,junction){
if(uploadSize==true){
return true;
}else{
return false;
}
}
</aui:validator>
</aui:input>
<aui:select label="Promotion Assignment" id="promotionAssignmentId"
helpMessage="Choose options" name="promotionAssignment"
multiple="true">
<c:forEach var="client" items="${clientList}">
<aui:option value="${client.key}">${client.value }</aui:option>
</c:forEach>
<aui:validator name="required"
errorMessage="Please Select At least One Client " />
</aui:select>
<aui:button type="submit" name="submit" value="submit" />
Используйте только <aui:validator>
в качестве тела тегов <aui:input>
. Для других тегов существуют другие подходы.
Если вам нужна только обязательная проверка поля для раскрывающегося списка, я бы посоветовал вам использовать атрибут required="true"
на вкладке <aui:select>
. Это приведет к отображению сообщения This field is required
по умолчанию.
Если вам нужно собственное сообщение об ошибке, вам придется использовать <aui:script>
для проверки формы:
<aui:script use="aui-form-validator">
new A.FormValidator({
boundingBox: $("<portlet:namespace />myForm"),
rules: {
<portlet:namespace />promotionAssignment: {
required: true
}
},
fieldStrings: {
<portlet:namespace />promotionAssignment: {
required: 'Please select at least one client'
}
}
});
</aui:script>
Вот несколько ссылок на валидации Liferay: https://community.liferay.com/forums/-/message_boards/message/17517133http://www.liferaysavvy.com/2014/01/form-validation-in-liferay.html