powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / Oracle APEX [игнор отключен] [закрыт для гостей] / работа с отмеченными элементами в JavaScript
4 сообщений из 4, страница 1 из 1
работа с отмеченными элементами в JavaScript
    #36089531
heavyside
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Здравствуйте, снова вопрос:
Есть записи, разбитые по нескольким каталогам(например каталоги -классика, фантастика, фэнтези..) в отчёте есть возможность отмечать галочками книги, необходимо отмеченные галочками книги перенести в другой каталог.
Делаю так:
в хедер пишу
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
<script language="JavaScript" type="text/javascript">
<!--
function callMyPopup () {
var url;
var get = new htmldb_Get(null,$v('pFlowId'),'APPLICATION_PROCESS=',$v('pFlowStepId'));
get.add('wwv_flow.f02', $v('wwv_flow.f02'));
var ret = get.get();
get = null;
var rns=document.wwv_flow.f02;
//var rns=document.getElementsByName('apex_application.G_f02');
  url = 'http://localhost:7777/pls/apex/f?p=&APP_ID.:100:&APP_SESSION.::::P100_PAGE_FROM_ID,P100_RN:' + '21'+','+ rns[ 0 ];
  w = html_PopUp(url,"winLov","Scrollbars=1,resizable=1,width=800,height=600");
  if (w.opener == null)
  w.opener = self;
  w.focus();
  }
//-->
</script>
т.е. пока пробую просто передать один RN (rns[0]) для теста. В поле P100_RN получаю в итоге undefined если в отчете 1 элемент и [object HTMLInputElement] если элементов больше(отмечено всё равно сколько)
на странице 100 происходит выбор нового каталога и по нажатию ок должно перемещать в другой каталог и закрывать всплывающее окно. это я пока не делал.
Ориентируюсь я по:
этому
и
этому
...
Рейтинг: 0 / 0
работа с отмеченными элементами в JavaScript
    #36089785
kvad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
В вызове
get.add('wwv_flow.f02', $v('wwv_flow.f02'));
1-й параметр - имя item-а, подозреваю, что такого item-а на странице нет.
Ф-ция $v в параметрах может принимать либо id dom-элемента, либо ссылку на него. "wwv_flow.f02" - это массив разрозненных чекбоксов отчета (не объединенных в fieldset), поэтому $v здесь не сможет создать массив значений отмеченных.
Чтобы передать на сторону сервера массив значений, можно использовать метод
get.AddArray(a, fn), где a - массив значений, fn - номер f-таблицы. При этом на стороне сервера во время get.get элементы этого массива окажутся в табличке apex_application.g_f<fn> (<fn> - тот самый номер, 2 знака, с лидирующим "0"), но не долго, т.к. apex_application.g_fnn - это просто переменные пакета, которые необходимо будет сразу обработать, непример, перенести в коллекции апекса (см. http://download.oracle.com/docs/cd/E14373_01/appdev.32/e11838/advnc.htm#insertedID4 ). Тут 'APPLICATION_PROCESS=' не обойтись, придется написать APPLICATION_PROCESS, который бы этот перенос осуществил.
Дальше можно уже вызывать попапы, если хочется, и где-то далее, когда будет известен целевой каталог, выполнить серверную проц., которая перенесет книги, id которых к этому моменту будут в коллекции.
Как собрать значения отмеченных чекбоксов f02 в массив? Например, так:

Код: plaintext
1.
2.
var a = [], ia = document.wwv_flow.f02;
for(var i=ia.length; i--;) if (ia[i].checked) a[a.length] = $v(ia[i]);

А стоит ли делать еще 1 окно (попап)? Может на форме отметки книг предусмотреть поле выбора целевой папки и делать обычный сабмит. Тогда не нужно будет заморачиваться сбором f02, все произойдет автоматом.
...
Рейтинг: 0 / 0
работа с отмеченными элементами в JavaScript
    #36090427
heavyside
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kvad,
ага, спасибо, в общих чертах понял, сейчас попытаюсь сделать.
делать на той же странице не очень удобно, каталоги-древовидная структура у меня и дерево на странице уже есть, выбор нового каталога тоже хотелось бы деревом. Использовать одно и то же неудобно, мне кажется...
...
Рейтинг: 0 / 0
работа с отмеченными элементами в JavaScript
    #36091053
heavyside
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kvad,
в общем, сделал как вы предложили-селект лист на странице и кнопку переместить, не совсем то, что в идеале хотелось бы, но учитывая небольшое количество каталогов вполне приемлимо. иерархический вид сохранил за счёт отступов.
Спасибо. А вариант с джава скрипт оставлю про запас, когда получше изучу.
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / Oracle APEX [игнор отключен] [закрыт для гостей] / работа с отмеченными элементами в JavaScript
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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