|
|
|
Стандартный репорт и LOV
|
|||
|---|---|---|---|
|
#18+
Подскажите...как мне получит значение value в выпадающем списке.(Красным овалом обведено) ,чтоб потом при нажатии на кнопочку "карандашик"(javascript) функция это значение знала. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.03.2015, 20:46 |
|
||
|
Стандартный репорт и LOV
|
|||
|---|---|---|---|
|
#18+
irbis_al, доп.запрос и не париться ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.03.2015, 21:35 |
|
||
|
Стандартный репорт и LOV
|
|||
|---|---|---|---|
|
#18+
В параметрах страницы, в разделе JavaScriptTop -> Function and Global Variable Declaration Код: javascript 1. 2. 3. 4. 5. В таблице - в атрибутах нужного выпадающего списка (Column Attributes -> Element Attributes) Код: javascript 1. В итоге после изменения значения серекта - значение попадет в глобальную (для javascript) переменную curr_lov_val ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.03.2015, 21:54 |
|
||
|
Стандартный репорт и LOV
|
|||
|---|---|---|---|
|
#18+
Petro123irbis_al, доп.запрос и не париться Доп запрос ничего не даст, элемент не сабмитится и PL/SQL ничего не знает о выбранном значении ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.03.2015, 21:57 |
|
||
|
Стандартный репорт и LOV
|
|||
|---|---|---|---|
|
#18+
Алексей ВыхрыстюкВ параметрах страницы, в разделе JavaScriptTop -> Function and Global Variable Declaration Код: javascript 1. 2. 3. 4. 5. В таблице - в атрибутах нужного выпадающего списка (Column Attributes -> Element Attributes) Код: javascript 1. В итоге после изменения значения серекта - значение попадет в глобальную (для javascript) переменную curr_lov_val Получается у Вас одна переменная держит изменение... А вдруг пользователь нащёлкал на таблице...а потом в случайном порядке нажал на карандаш. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.03.2015, 21:59 |
|
||
|
Стандартный репорт и LOV
|
|||
|---|---|---|---|
|
#18+
Алексей ВыхрыстюкДоп запрос ничего не даст, элемент не сабмитится и PL/SQL ничего не знает о выбранном значении причем сабмит? Ты просто повторишь запрос по ID из первой колонки. Т.е. часть запроса из общего запроса IR ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.03.2015, 22:03 |
|
||
|
Стандартный репорт и LOV
|
|||
|---|---|---|---|
|
#18+
irbis_alПолучается у Вас одна переменная держит изменение... А вдруг пользователь нащёлкал на таблице...а потом в случайном порядке нажал на карандаш. я бы не сохранял вообще или не обращал внимания на то что нащёлкали в LOV без сохранения оного в БД. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.03.2015, 22:05 |
|
||
|
Стандартный репорт и LOV
|
|||
|---|---|---|---|
|
#18+
Petro123irbis_alПолучается у Вас одна переменная держит изменение... А вдруг пользователь нащёлкал на таблице...а потом в случайном порядке нажал на карандаш. я бы не сохранял вообще или не обращал внимания на то что нащёлкали в LOV без сохранения оного в БД. Как говорили древние: Упрощать сложно. Усложнять легко. Я хочу пользователю упростить...поэтому иду по сложному пути. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.03.2015, 22:08 |
|
||
|
Стандартный репорт и LOV
|
|||
|---|---|---|---|
|
#18+
1. Если после выбора селекта не предпринимать никаких действий (сохранение данных) - получить значение можно только через javascript. 2. Если после выбора значения - сохранять изменения в базе ( AJAX Callbacks) - тогда лучше использовать метод Petro123 - искать подзапросом по id строки. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.03.2015, 22:10 |
|
||
|
Стандартный репорт и LOV
|
|||
|---|---|---|---|
|
#18+
Алексей Выхрыстюк1. Если после выбора селекта не предпринимать никаких действий (сохранение данных) - получить значение можно только через javascript. 2. Если после выбора значения - сохранять изменения в базе ( AJAX Callbacks) - тогда лучше использовать метод Petro123 - искать подзапросом по id строки. Ну у меня уже есть идея...не могу её реализовать правильно. Я заметил что апекс даёт id selectу id=f01_0001 id=f01_0002 и т.д согласно jQuery если мы знаем id региона мы знаем о нём всё. Я подправил запрос select '#f01_'||lpad((rank() over (order by goodsname)) ,4,'0') f1, А на кнопке javascript:update("#F1#") Таким образом я получаю имя региона в update. Никак не могу val вытащить. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.03.2015, 22:15 |
|
||
|
Стандартный репорт и LOV
|
|||
|---|---|---|---|
|
#18+
irbis_alКак говорили древние: как говорили древние - для одного ТЗ есть 1000 и 1 способ решения. Я тоже за минимальные клики юзверя. Но мы не знаем ВИ)) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.03.2015, 22:16 |
|
||
|
Стандартный репорт и LOV
|
|||
|---|---|---|---|
|
#18+
Petro123irbis_alКак говорили древние: как говорили древние - для одного ТЗ есть 1000 и 1 способ решения. Я тоже за минимальные клики юзверя. Но мы не знаем ВИ)) Я сам владелец своего дела... своего ТЗ...и сам ему же судья...поэтому не сочкую :-) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.03.2015, 22:19 |
|
||
|
Стандартный репорт и LOV
|
|||
|---|---|---|---|
|
#18+
Для сохранения данных селекта нужно: В параметрах страницы, в разделе JavaScriptTop -> Function and Global Variable Declaration Код: javascript 1. 2. 3. 4. 5. 6. 7. 8. 9. Добавить атрибут с ID строки и в Column FormattingTop -> HTML Expression прописать Код: html 1. В таблице - в атрибутах нужного выпадающего списка (Column Attributes -> Element Attributes) onchange=ch_lov(this) Код AJAX Callbacks процесса updrow_lov Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.03.2015, 22:20 |
|
||
|
Стандартный репорт и LOV
|
|||
|---|---|---|---|
|
#18+
irbis_alАлексей Выхрыстюк1. Если после выбора селекта не предпринимать никаких действий (сохранение данных) - получить значение можно только через javascript. 2. Если после выбора значения - сохранять изменения в базе ( AJAX Callbacks) - тогда лучше использовать метод Petro123 - искать подзапросом по id строки. Ну у меня уже есть идея...не могу её реализовать правильно. Я заметил что апекс даёт id selectу id=f01_0001 id=f01_0002 и т.д согласно jQuery если мы знаем id региона мы знаем о нём всё. Я подправил запрос select '#f01_'||lpad((rank() over (order by goodsname)) ,4,'0') f1, А на кнопке javascript:update("#F1#") Таким образом я получаю имя региона в update. Никак не могу val вытащить. Всё получилось.Плохо что я плохо знаю JS и jQuery в частности. Код: javascript 1. 2. 3. 4. 5. Ну а дальше я уже знаю...что с этим делать. :-) Всем откликнувшимся спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.03.2015, 22:25 |
|
||
|
Стандартный репорт и LOV
|
|||
|---|---|---|---|
|
#18+
irbis_al, давай сначала. Еще раз скажите, у Вас стандартный репорт или табуляр? Можно пойти двумя путями. 1. Изменять URL динамически на карандашике 2. Генерить урл на лету, в зависимости от выбранного значения. Чтобы помочь вам с JS и Jquery. приложите принтскрин Inspect elementа "карандаша" и "select". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.03.2015, 09:13 |
|
||
|
Стандартный репорт и LOV
|
|||
|---|---|---|---|
|
#18+
irbis_al, А вообще в теории так. Как правильно искать с помощью JS значение и менять его в табличной форме. Как известно, чтобы найти значение в таблице нужно знать его значение по вертикале и по горизонтали. Во вертикали это у нас HEADERS, заголовок столбца. По горизонтали, это номер строки. Как вы правильно заметили f01_0001, последние четыре символа это номер строки. И теперь схема действий, по двум моим предложным вариантам. 1. Когда меняется значение в селекте, вызывается функция, в нее мы передадим this. А из this мы поймем строчку и значение.и меняем значение его в карандаше (в урл) в нужной строке. 2. Когда жмем на карандаш, вызывается функция, в нее мы передадим this. А из this мы поймем строчку карандаша, и сгенерим новый урл на основе значения селекта, и потом откроем что то. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.03.2015, 09:23 |
|
||
|
Стандартный репорт и LOV
|
|||
|---|---|---|---|
|
#18+
blkangel1. Изменять URL динамически на карандашике 2. Генерить урл на лету, в зависимости от выбранного значения. тут непонятно, зачем его вообще менять. Урл обычно для перехода и получения страницы, а не сохранения данных (в данном юзабилити). Интерфейс должен быть интуитивно понятным. Тут сменив водку на лимонад, непонятно что произойдёт при редактировании карандаше. imho ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.03.2015, 09:38 |
|
||
|
Стандартный репорт и LOV
|
|||
|---|---|---|---|
|
#18+
blkangel, У меня стандартный репорт.(это в теме указано). Действительно Ваш способ ...классический...но (мне стыдно признаться ) Настолько плохо знаю JS и JQuery Что Оно для меня сложное.(В принципе разобраться можно...Но много непростого...Например Изменять URL динамически на карандашике(Надо знать как доступ к нему получить) или Генерить урл на лету, в зависимости от выбранного значения. ) А так(немного суррогатно,но очень просто) ...я сделал фиктивное поле в запросе которое отображает(повторяет) имя(id) selecta И в функции на кнопочке update (#F1#,#F2#)я получаю уже id регионов...а там достать. value уже дело техники. Метод очень простой но не лишён недостатков.В частности надо отключить пагинацию.(с новой страницы опять имена элементов f01_0001 или же в запросе получать остаток от деления на пагинационную переменную) Если кто-то на досуге выложит сюда полноценный код классический...предложенный blkangel Думаю все будут признательны.(я думаю у многих может возникнуть такая ситуация Report standart+LOV) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.03.2015, 09:39 |
|
||
|
Стандартный репорт и LOV
|
|||
|---|---|---|---|
|
#18+
Яваскрипт для работы с табулярной формой, для скрытых полей, необходимо прописать HEADERS Код: javascript 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.03.2015, 10:00 |
|
||
|
Стандартный репорт и LOV
|
|||
|---|---|---|---|
|
#18+
blkangel, Яваскрипт для работы с табулярной формой, для скрытых полей, необходимо прописать HEADERS А табулярная,чем-то от стандартной принципиально отличается? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.03.2015, 10:05 |
|
||
|
|

start [/forum/topic.php?fid=50&msg=38900787&tid=1875053]: |
0ms |
get settings: |
9ms |
get forum list: |
20ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
175ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
61ms |
get tp. blocked users: |
1ms |
| others: | 219ms |
| total: | 505ms |

| 0 / 0 |
