Commit 024b76a9 authored by Valentin Skripnikov's avatar Valentin Skripnikov

-

parent 285c2547
...@@ -55,7 +55,7 @@ body, div, span, input, button { ...@@ -55,7 +55,7 @@ body, div, span, input, button {
background-color: #6e8ebd; background-color: #6e8ebd;
border: 1px #6e8ebd solid; border: 1px #6e8ebd solid;
height: 30px; height: 30px;
width: 200px; width: 110px;
padding-left: 10px padding-left: 10px
} }
......
Вариант 4. Дополнительная валидация формы Вариант 4. Дополнительная валидация формы
----------------------------------------- -----------------------------------------
Расширение варианта 1. Дополнительная валидация: значение поля «Итоговая сумма» Расширение :ref:`extfp-usecases-uc1-label`. Дополнительная валидация: значение поля «Итоговая сумма»
должно быть не больше значения поля «Предварительная сумма». должно быть не больше значения поля «Предварительная сумма».
Иначе сразу по мере ввода некорректного значения поле подсвечивается красным Иначе сразу по мере ввода некорректного значения поле подсвечивается красным
и появляется оранжевая подпись под ним с текстом: и появляется оранжевая подпись под ним с текстом:
...@@ -11,3 +11,55 @@ ...@@ -11,3 +11,55 @@
.. raw:: html .. raw:: html
<iframe src="../../_static/html/integration/extfp-usecases/uc4/index.html" scrolling='no' height="930px" width="100%" style="border:1px solid grey;"></iframe> <iframe src="../../_static/html/integration/extfp-usecases/uc4/index.html" scrolling='no' height="930px" width="100%" style="border:1px solid grey;"></iframe>
Исходный код JavaScript и CSS формы аналогичны :ref:`extfp-usecases-uc1-label`.
Исходный код JavaScript доп. ФЛК для варианта 4, который необходимо вставить
во вкладку «Код скрипта» настроек компонента, соответствующему числовому
полю «Итоговая сумма»:
.. code-block:: javascript
var sum1 = model.playerModel.getModelWithId("sum1");
function checkSumValue() {
return model.getValue() !== null && parseInt(sum1.getValue()) < parseInt(model.getValue());
}
var errorLabel = jQuery("<div>", {class: "asf-Label"});
errorLabel.css("color", "#ff9966");
errorLabel.html('Значение данного поля не должно превышать значения поля "Предварительная сумма"');
view.container.append(errorLabel);
errorLabel.hide();
view.originalMarkInvalid = view.markInvalid;
view.markInvalid = function () {
view.originalMarkInvalid();
errorLabel.show();
};
view.originalUnmarkInvalid = view.unmarkInvalid;
view.unmarkInvalid = function () {
view.originalUnmarkInvalid();
errorLabel.hide();
};
sum1.on("valueChange", function () {
view.checkValid();
});
model.on("valueChange", function () {
view.checkValid();
});
model.originalErrors = model.getSpecialErrors;
model.getSpecialErrors = function () {
if (checkSumValue()) {
return {id: model.asfProperty.id, errorCode: AS.FORMS.INPUT_ERROR_TYPE.valueTooHigh};
} else {
return model.originalErrors();
}
}
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment