powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M [игнор отключен] [закрыт для гостей] / Помощь з запросом
15 сообщений из 40, страница 2 из 2
Помощь з запросом
    #36156131
GreenBeret
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Видел в одной книге такое:
d %request.Set("Field",12)
Первый параметр-имя поля, второй-новое значение. Но так тоже не работает.
Кстати я пытался сохранить id выделеного элемента в первом скрипте в поле хиден,
но потом какае то мистика получалась: написал после csp:IF еще один скрипт на взятие
индекса из поля хиден и передаче его списку, но оно не работает, причем присвоение конс-
танты работает, а значения из хиден нет, хотя там оно есть и вроде нормальное.
Примерный код:
<head>
<script language="JavaScript">
function Make() {
var o=document.getElementById('Field');
var i=o.selectedIndex;
var fld=o.options[i].value;
document.getElementById('fsel').value=fld;
document.getElementById('num').value=i
}
</script>
<input type="hidden" id="num" name="num">
.....
<CSP:IF....>
<script language="JavaScript">
var o=document.getElementById('Field');
var i=document.getElementById('num').value;
o.selectedIndex=i;//так не работает
o.selectedIndex=2//так работает[b][b][b]
[/b][/b]
</script>[/b]
</head>
Выделил добавленое
...
Рейтинг: 0 / 0
Помощь з запросом
    #36156149
GreenBeret
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Немного накосячил, должно быть так
<head>
<script language="JavaScript">
function Make() {
var o=document.getElementById('Field');
var i=o.selectedIndex;
var fld=o.options[i].value;
document.getElementById('fsel').value=fld;
document.getElementById('num').value=i
}
</script>
</head>
<body>
<input type="hidden" id="num" name="num">
.....
<CSP:IF....>
<script language="JavaScript">
var o=document.getElementById('Field');
var i=document.getElementById('num').value;
o.selectedIndex=i;//так не работает
o.selectedIndex=2//так работает
</script>

......
</body>
...
Рейтинг: 0 / 0
Помощь з запросом
    #36156332
Блок А.Н.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вы что-то не то делаете, кажется

Смысл объекта реквест - ловить параметры запроса к ксп-странице
если к странице обращаются по url типа mycsp?param1=value1&param2=value2
либо ловить параметры формы после субмита (что в принципе одно и то же)

Смысл сохранять значение выбранного поля в поле hidden - чтобы потом субмитить форму, реквестом поймать сохраненное ранее значение и поставть в нужное положение элемент селект.

Если вы просто сохраните значение в поле и просто сделате релоад страницы, то значение, естественно, потеряется. Если вы хотите уйти со страницы, а потом вернуться и поймать значение, то стоит сохранить значение в сессию.

Типа
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
<select id=select1 onchange=#call(..SaveVar(this.id,this.selectedIndex))#>
<option> 111 </option>
</select>

<script language=javascript>
 document.document.getElementById('select1').selectedIndex=#(%session.Get('select1'))#
</script>

<script language=cache method=SaveVar arguments="name:%String,value%String">
 d %session.Set(name,value)
 Q
</script>
С точки зрения логики конечно полная хрень сохранять selectedindex, но для демонстрации пойдет.
...
Рейтинг: 0 / 0
Помощь з запросом
    #36156368
GreenBeret
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
но я не ухожу со страницы, и такой прием с сохранением в хиден нормально работает для
запроса, то есть я в хиден сохраняю имя поля для запроса и он нормально работает.
Как я уже написал единственная проблема возникает с selectedIndex.
Сейчас разбирусь в вашем варианте
...
Рейтинг: 0 / 0
Помощь з запросом
    #36156549
Блок А.Н.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Тогда (как это уже часто было), я неправильно понял задачу
Скажите, что вы хотите (первоначальная цель сменилась и текущую задачу не могу понять)
...
Рейтинг: 0 / 0
Помощь з запросом
    #36156559
GreenBeret
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Необходимо что б после нажатия клавиши в списке выделеным оставался элемент, который
был выбран до нажатия. А то после нажатия оно сбрасывается на первый элемент в списке.
...
Рейтинг: 0 / 0
Помощь з запросом
    #36156772
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
GreenBeret , все дело в том, что ты не чего не присваиваешь скрытой переменной... Она в твоем коде не определена.

Код: plaintext
<input type="hidden" id="num" name="num">

А нужно ее определять!

Код: plaintext
<input type="hidden" id="num" name="num" value='#($g(%request.Data("num",1)))#'>

И такое вставление скрипта не приветствуется в html-разработке...
...
Рейтинг: 0 / 0
Помощь з запросом
    #36156788
GreenBeret
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ну как же не присваиваю? а это что?
document.getElementById('num').value=i
...
Рейтинг: 0 / 0
Помощь з запросом
    #36156813
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
GreenBeretа это что?
Это "до" перезагрузки страницы... После перезагрузки это значение только в реквесте... В самой переменой нет ничего (см. свой код).
А вот если напишешь как я показал - там таки будет значение и его можно будет взять.
...
Рейтинг: 0 / 0
Помощь з запросом
    #36156829
GreenBeret
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Pапутался я совсем. Почему тогда другое поле хиден, которое хранит название поля работает
нормально?я ж по нему запрос провожу, и там нету того что вы написали.
ЗЫ: Попробывал по вашему-не работает
...
Рейтинг: 0 / 0
Помощь з запросом
    #36156845
GreenBeret
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
нет, подождите, метод вызываемый на onsubmit переносит значения в новую сгенереную страницу.
...
Рейтинг: 0 / 0
Помощь з запросом
    #36156904
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Водно пришла пора показывать свой код...
----------
Cache for Windows (x86-32) 2007.1.3 (Build 607) Wed Oct 17 2007 02:12:09 EDT
...
Рейтинг: 0 / 0
Помощь з запросом
    #36156921
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
GreenBeretПочему тогда другое поле хиден, которое хранит название поля работает
нормально?
Там тоже нет значения... Да оно там и не нужно после перезагрузки... Это поле используется для того чтобы после субмида его значение попало в реквест.
А вот потом вся работа идет именно с реквестом этой переменной, а не с самой переменной, как в последнем случае...

Т.е. тут нужно четко отслеживать момент что ты имеешь "до" перезагрузки... И что "после"...
...
Рейтинг: 0 / 0
Помощь з запросом
    #36157064
GreenBeret
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Все, всем спасибо,работает, вы были правы krvsa, ваш код работает.
Возник еще один вопрос: %request хранит данные о предыдущей странице.
А вот в Джава скрипте, который находится в самом верху кода доступ идет к полям текущей
страницы. Есть ли такое в скриптахх Каше? Или джава тоже с предыдущей все берет?
...
Рейтинг: 0 / 0
Помощь з запросом
    #36157300
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Скрипт конструкции

Код: plaintext
1.
2.
<script language='cache' runat='server'>
...
</script>

Выполняется только на сервере... И ему доступно только то, что передано серверу...

Скрипт конструкции

Код: plaintext
1.
2.
<script language='cache' runat='compiler'>
...
</script>

Вообще ничего не получит... Если это только не записано уже в БД.

Т.о. доступ к переменным страницы в момент работы с ней доступен только ЯваСкрипту... С его помощью можно считать нужные данные, вызвать кащейское гипперсобытие, отработать в нем нужные действия (на Каша же) и вернуться на страницу.
Причем гипперсобытие может вернуть некие данные, опираясь на которые, можно (опять же) ЯваСкриптом изменить ее (страницу)...
----------
Cache for Windows (x86-32) 2007.1.3 (Build 607) Wed Oct 17 2007 02:12:09 EDT
...
Рейтинг: 0 / 0
15 сообщений из 40, страница 2 из 2
Форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M [игнор отключен] [закрыт для гостей] / Помощь з запросом
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]