SimpleAjax
Данный класс позволяет клиентскому скрипту выполнять серверный код, используя Внешний скрипт.
Для того чтобы испо льзовать класс SimpleAjax, выполните следующие шаги:
- Вызовите конструктор SimpleAjax, чтобы создать экземпляр SimpleAjax. В качестве аргумента передайте в конструктор название внешнего скрипта, который включает в себя класс с необходимыми методами.
- Вызовите метод addParam(paramName, paramValue). В качестве обязательного вызова передайте в него параметры, определяющие требуемый метод. Для этого выполните следующие шаги:
- задайте параметр sysparm_name,
- и название метода из определенного в вызываемом Внешнем скрипте класса. Вызывайте этот метод необходимое количество раз, чтобы передать другие параметры в используемый внешний скрипт.
- Вызовите метод getXML(callback), чтобы выполнить описанный выше метод.
Название класса, определенного в записи Внешний скрипт, должно совпадать с названием внешнего скрипта.
Для возможности вызова внешнего скрипта в клиентских скриптах, активируйте атрибут Доступно для клиентского API.
Подробнее читайте в статье Внешние скрипты.
addParam( paramName, paramValue)
Используйте метод, чтобы передать указанное имя и значение параметра серверной функции, которая связана с текущим объектом SimpleAjax. Метод addParam() можно использовать несколько раз, передавая различные параметры и их значения.
На стороне сервера скрипт выполняется только после вызова метода getXML() в клиентском скрипте.
Название параметра должно начинаться с префикса sysparm_. Не используйте предопределенное имя параметра sysparm_name для передачи значения параметру функции.
Параметры:
Наименование | Тип | Обязательно | Значение по умолчанию |
---|---|---|---|
paramName | String | Да | Нет |
paramValue | String | Да | Нет |
Возвращаемое значение:
Тип | Описание |
---|---|
Void | Метод не возвращает значение. |
Пример:
const sAjax = new SimpleAjax('DurationCalculator'); // Вызов внешнего скрипта
sAjax.addParam('sysparm_name', 'getDuration'); // Вызов метода класса
sAjax.addParam('sysparm_start', s_form.getValue('start')); // Передать параметр
sAjax.getXML(callback);
function callback(response) {
const answer = response.responseXML.documentElement.getAttribute('answer');
console.log(answer);
}