Set/get scope var через csjs

victorhalf

Well-Known Member
29.05.2007
74
1
#1
Привет, Помогите понять что не так.
Что нужно: спросить пользователя и записать его ответ в поле документа
Что делал:
1)поле прикрученное к скоп переменной
Код:
<xp:inputText id="rejectInput" value="#{sessionScope.rejectReason}">  </xp:inputText>
2)кнопка с кодом
csjs =
JavaScript:
var ans = XSP.prompt("Причина?");
if(ans==null || ans=="" )
   {alert("Нужна причина "); return false
}else{
   XSP.getElementById("#{id:rejectInput}").value = ans;
  return true;  };
ssjs =
(для примера) document1.setValue("history",sessionScope.rejectReason);

В чем хрень: в итоге в ssjs скоп переменную не получаю (смотрю в дебагере - её вообще нет)
Причем этот код работал пока всё было на одной странице, а когда разбросал по кастом контролам обнаружил такую ж.
Помогите плиз, может чего не так делаю?
 

romych2004

Well-Known Member
Lotus team
01.04.2013
109
19
#2
А Вы данные-то на сервер отправляете? (партиал рефреш)
Скиньте полный код кнопки, пожалуйста
 

victorhalf

Well-Known Member
29.05.2007
74
1
#3
А Вы данные-то на сервер отправляете? (партиал рефреш)
Изначально - нет. Но код-то работал(пока был на одной странице).
Как я понимаю рефреш запускать нужно из клиентского кода? Тогда это ситуацию не изменило.
JavaScript:
 var ans = XSP.prompt("Причина?");
if(ans==null || ans=="" )
   {alert("Нужна причина "); return false
}else{
   XSP.getElementById("#{id:rejectInput}").value = ans;
   XSP.partialRefreshGet("#{id:rejectInput}");
  return true;  };
Полный код кнопки местный движок блочит(. но важно ведь что в csjs.
ПС.Собственно я обошёлся Rpc, но осадочек то остался
 

romych2004

Well-Known Member
Lotus team
01.04.2013
109
19
#4
Как я понимаю рефреш запускать нужно из клиентского кода? Тогда это ситуацию не изменило.
Либо в кнопке настраиваете partial refresh и partial execute, либо в csjs, да..
Если не ошибаюсь, XSP.partialRefreshGet("#{id:rejectInput}"); - только получит данные с сервера, Вам же их надо отправить, используйте partialRefreshPost или передавайте в Get параметр со значением

По поводу работы кода на одной странице - не думаю что как-то зависит, во всяком случае я не встречался. Разве что может другой элемент есть с таким же айдишником

p.s. код можно в текстовый файл кинуть и приложить