|
Возврат таблицы с помощью xquery по нажатию кнопки.
|
|||
---|---|---|---|
#18+
Приветствую всех. Имею следующую ситуацию: 1. База eXist db 2. В ней хранится xquery, который формирует html страницу. 3. В этой html странице есть xquery функция, которая возвращает таблицу. Когда эта функция вызывается статически на странице, то таблица возвращается и всё работает. 4. Но конечный результат должен работать по-другому: есть еще несколько инпут контролов, которые появляются и в них можно ввести данные. Мне нужно параметры из этих инпут контролов передать функции и вызвать ее по нажатию кнопки. Вот с этим у меня проблемы. 5. Я пробовал скопировать функционал из функции в отдельный xquery скрипт, который тоже возвращает таблицу, и вызывать его через submission. Я думал, что результат выполнения этой xquery заменит содержимое xf:instance id="table". Но этого не происходит. Такое впечатление, что так я могу вернуть только строку текста в <xf:output ref="instance('table')/data/*> (тогда работает). 6. Если я изменяю replace="instance" на replace="all", то возвращается таблица в виде хтмл кода, но в таком случае вся предыдущая страница теряется. Поэтому помогите разобраться, как вызвать функцию или отдельный квери, передать ему параметры из инпут контролов и отобразить возвращаемую таблицу на странице? Код: html 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. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90. 91. 92. 93. 94. 95. 96. 97. 98. 99. 100. 101. 102. 103. 104. 105. 106. 107. 108. 109. 110. 111. 112. 113. 114. 115. 116. 117. 118. 119. 120. 121. 122. 123. 124. 125. 126. 127. 128. 129. 130. 131. 132. 133. 134. 135. 136. 137. 138. 139. 140. 141. 142. 143. 144.
Отдельный тестовый xquery для возрата таблицы по сабмит: Код: html 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21.
... |
|||
:
Нравится:
Не нравится:
|
|||
07.06.2016, 10:18 |
|
Возврат таблицы с помощью xquery по нажатию кнопки.
|
|||
---|---|---|---|
#18+
Я пошел по другому пути и снова столкнулся с препятствием: Теперь я пытаюсь построить таблицу обращаясь к элементам instance('table') , которую возвращает дополнительная xquery. Но сейчас мне возвращается только первая строка из набора. Я не знаю как проитерироваться правильно по instance('table') 1. Если вкладываю строки таблицы в Код: xml 1.
, то ничего не получаю. 2. Пытался написать через xquery и проитерироваться по интстанц через for, но в таком случае получаю ошибку "Function instance() is not defined in module namespace: http://www.w3.org/2005/xpath-functions" Как еще можно получить instance как nodeset, чтоб проитерироваться по нему через for ? Код целиком: Код: html 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. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90. 91. 92. 93. 94. 95. 96. 97. 98. 99. 100. 101. 102. 103. 104. 105. 106. 107. 108. 109. 110. 111. 112. 113. 114. 115. 116. 117. 118. 119. 120. 121. 122. 123. 124. 125. 126. 127. 128. 129. 130. 131.
returnTable.xq: Код: html 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. 37. 38.
Эта квери возвращает такой набор: Код: xml 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14.
... |
|||
:
Нравится:
Не нравится:
|
|||
07.06.2016, 16:58 |
|
|
start [/forum/topic.php?fid=14&fpage=7&tid=1332095]: |
0ms |
get settings: |
11ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
38ms |
get topic data: |
14ms |
get forum data: |
3ms |
get page messages: |
49ms |
get tp. blocked users: |
2ms |
others: | 17ms |
total: | 156ms |
0 / 0 |