Ssjs - Partial Update Нескольких Элементов ?

alexas

Well-Known Member
10.06.2009
214
0
Москва
#1
Как сделать Partial Update нескольких элементов в серверном скрипте? Подскажите плиз.
 

Eugen

Well-Known Member
22.03.2012
177
0
Москва
#3
День добрый.
Подскажите пожалуйста, что-то не совсем разобрался...
Есть у меня кнопка, на onClick которой выставлен Partial Update. Если нажать "Select element" можно выбрать только один элемент из списка или сделать его Computed и прописать туда скрипт.
Мой скрипт:
JavaScript:
var id1 = "#{id:tableRow1}";
var id2 = "#{id:tableRow2}";
XSP.partialRefreshGet(id1, {
  onComplete: function() {XSP.partialRefreshGet(id2); }
})
Что это за объект XSP? При открытии страницы мне пишет "Error while executing JavaScript computed expression
Script interpreter error, line=1, col=79: [ReferenceError] 'XSP' not found".
 

Eugen

Well-Known Member
22.03.2012
177
0
Москва
#5
@alexas1, можно и в один Panel запихнуть и его обновить, просто хочется понять как это работает, мало ли где пригодится... В вашем примере человек пишет что-то про обновление view data source и про то, что у него внутрь одной таблицы проставляется еще один табличный тег, или что-то вроде того(туго у меня с инглишем). В моем же случае проблема пока на уровне синтаксиса.
ЗЫ: 9.0.1 версия, если что... забыл сразу указать.
 

alexas1

Well-Known Member
Lotus team
10.04.2014
687
238
#6
По сути, штука такая
на onClick которой выставлен Partial Update
- это SSJS
XSP.partialRefreshGet - это CSJS
Из SSJS вызвать CSJS можно (как и наоборот)
Писать в SSJS CSJS - нельзя (как и наоборот)
Способов вызова множество - зависит от задачи.
В инете куча примеров, погугли "triggering CSJS from SSJS " или типа того.
Самое простое, универсальное и понятное - вызов нужной функции (хоть SSJS, хоть CSJS) заранее описанной в теле страницы.
 

Eugen

Well-Known Member
22.03.2012
177
0
Москва
#7
Спасибо за развернутый ответ. :bravo: Прописал свой скрипт на клиентской стороне события onClick кнопки и в Server Options выставил Partial Update без указания ID элемента и все заработало.
 

alexas1

Well-Known Member
Lotus team
10.04.2014
687
238
#8
Спасибо за развернутый ответ. :bravo: Прописал свой скрипт на клиентской стороне события onClick кнопки и в Server Options выставил Partial Update без указания ID элемента и все заработало.
Тож вариант. В кнопе сначала срабатывает CSJS потом SSJS, если есть.
Кста, в OnComplete можно положить CSJS и получить цепочку клиент-сервер-клиент