Перейти к основному содержанию
Контакты

Компонента Visualforce ActionFunction

О компании
Опубликовано admin
11 мая 2015
112

Компонент Visualforce ActionFunction - это компонент, позволяющий вызывать методы контроллера из JavaScript с использованием AJAX запроса при этом он должен находиться внутри компонента <apex:form>.

Компонент, позволяющий вызывать методы контроллера из JavaScript с использованием AJAX запроса.

Компонент <apex:actionFunction> должен находиться внутри компонента <apex:form>.

В отличие от <apex:actionSupport>, который обеспечивает только поддержку при вызове методов контроллера из других компонентов Visualforce, <apex:actionFunction> выполняет новую функцию, которую можно вызвать из блока кода JavaScript.

Начиная с API версии 23, вы не можете поместить <apex:actionFunction> в компоненту итерации - <apex:pageBlockTable>, <apex:repeat> и т.д.  Разместите <apex:actionFunction> после компоненты итерации, а внутри итерации разместите функцию JavaScript, которая его вызывает.

Для использования actionFunction, в первую очередь, необходимо настроить имя (name=”MyActionFunction). Это единственный обязательный атрибут в этой компоненте.

Следующий шаг - настройка action. Методы, прописанные в actionсрабатывают, когда actionFunction вызван DOM событием где-либо на странице. Используйте синтаксис слияния поля для ссылки на метод. Например, action="{!save}" вызывает метод сохранения в контроллере. Если действие не указано, страница просто обновляется.

Атрибут rendered используется, чтобы активировать или деактивировать actionFunction.

Атрибут reRender помогает обновить только выбранные фрагменты страницы после выполнения метода.

С помощью oncomplete можно определить, что произойдет после.

 JavaScript вызывается после onbeforedomupdate – после того, как запрос AJAX был обработан, но до того, как DOM браузера обновится.

В timeout мы можем установить время (в миллисекундах) до истечения времени обновления AJAX.

Атрибут namespace используется при установке необходимого пространства имен, но если этот атрибут отсутствует, пространство имен будет сгенерировано автоматически.

Как и в большинстве других компонентов, вы можете установить id для actionFunction и позволить ссылаться на него другим компонентам на странице.

В атрибуте focus вы можете отобразить ID компоненты, которая будет в фокусе после завершения запроса AJAX.

Атрибутом status является ID соответствующеq компонентs, отображающий статус запроса обновления AJAX.

Устанавливая immediate="true", мы можем определить, должно ли действие, связанное с компонентой, произойти немедленно, без обработки каких-либо условий, связанных с полями на странице.

<!-- Page: -->

visualforce

/*** Controller ***/

visualforce


Вопрос эксперту
Информация по теме
Все материалы
Завершен курс Salesforce Developer
14 марта финальным экзаменом завершился курс Salesforce Developer, организованный командой JET BI для начинающих разработчиков, желающих развиваться в направлении Salesforce.
16 марта 2021
Вебинар Field Service Lightning
15 декабря состоялся вебинар на тему  "Salesforce® Field Service Lightning: Автоматизация работы выездных сотрудников". В качестве спикеров выступили Юлия Соломенко, старший менеджер проектов, и Екатерина Русакович, бизнес-аналитик компании JET BI.
16 декабря 2020
Salesforce
Professional Services
Внедрение Salesforce CRM
Внедрение Salesforce CRM для интернет стартапа в сегменте малого и среднего бизнеса в США, включая базовую настройку, миграцию данных, интеграцию с разными сторонними сервисами и серверной частью основного продукта (включая лицензирование и информацию об использовании синхронизации).
22 Сентября 2020