Форма разработана в LiveCycle 9. Поле используется для ввода текста в нижнем регистре. Необходимо, чтобы во время ввода текста ("изменить" событие) в первых букв слов появляются в верхнем регистре. Написано следующий код:
< событие деятельность = " изменение " имя = " event__change ">
< сценарий CONTENTTYPE = " применение / х-JavaScript ">
если (xfa.event.newText.length> xfa.event.prevText.length && xfa.event.change.length == 1)
{
xfa.event.change = xfa.form.topmostSubform.variables.Validation.VerchReg (xfa.event.change);
}
еще
{
xfa.event.change = "";
}
</ сценарий>
</ событие>
< переменные>
< сценарий CONTENTTYPE = " применение / х-JavaScript " название = " Проверка ">
вар первый = верно;
функционировать VerchReg (newsymbol)
{
вар повторно = / [А-Яа-я-""] / ;/ / Вводятся только кириллица - и пробел
если (re.test (newsymbol))
{
если (newsymbol == "")
{
Первый = верно;
вернуться newsymbol;
}
если (первый)
{
Первый = ложь;
вернуться newsymbol.toUpperCase ();
}
еще
{
вернуться newsymbol;
}
}
еще
{
вернуться "";
}
}
}
</ сценарий>
<? TemplateDesigner расширить 1?></ переменные>
Проблема: когда форма открывается в первый раз при вводе текста в нижнем регистре (например: Воронеж, Вологда, Россия, Москва, все работает хорошо и получить результат Вологодской Воронежской Москве), однако, если стереть все печатные, и начать еще раз для входа в нижнем регистре Воронеж, Вологда, Россия Москва, я получаю результат vologda Воронеж Москва, то есть, первое слово в нижнем регистре. Если вы удалите все печатные и, прежде чем вводить новые слова в поле поставить пробел, а затем удалить его и начать немедленно повторно ввести текст все работает как надо, то есть результат Вологда Воронеж Москва. Может кто подскажет, что проблема.