Ассоциация ЭБНИТ    ИРБИС-корпорация    Вики-Ирбис    Online/CHM справка Ирбис   
Web Ирбис и Z-Ирбис :  ИРБИС Irbis
 
вернуть значение функции JavaScript в Unifor
Пользователь: ILV (IP-адрес скрыт)
Дата: 03, October, 2013 12:55

Здравствуйте.
Мне хотелось бы знать - можно ли вернуть значение функции JavaScript в unifor

Что-то типа этого:

<script>
function a(i){
var a=i;
if(parseInt(i)<3)
return a;
else
return '0';
}</script>

<?
&uf('+1W4444'#<script>a("1")</script>),
'<script>alert("',&uf('+1R4444'),'")</script>'
?>



Редактировано 1 раз. Последний раз 03.10.2013 12:55 пользователем ILV.

Re: вернуть значение функции JavaScript в Unifor
Пользователь: Gena (IP-адрес скрыт)
Дата: 03, October, 2013 13:14

Нет, нельзя, потому что Юнифоры отрабатывают на стороне сервера и отдают уже результат, а ява скрипты работают уже с теми данными, которые оказываются на стороне клиента.

Попробуйте описать задачу, скорее всего ее можно всю решить на стороне сервера, или полностью решить на стороне клиента

Re: вернуть значение функции JavaScript в Unifor
Пользователь: ILV (IP-адрес скрыт)
Дата: 04, October, 2013 05:15

В стандартном Web-Ирбисе при результатах поиска под поисковыми полями появляется табличка "Найдено в других БД:"

Отрабатывает данный код.

(if &uf('+5T',&uf('+1R89'))<>'' then
if &uf('+1R6')= &uf('+5T',&uf('+1R89'))
then
else if &uf('+1R900'):&uf('+5T',&uf('+1R89')) then
&uf('+1W9#',&uf('+3F',&uf('+5T',&uf('+1R89')),',0,','|',&uf('+1R3'),'|',&uf('+1R34'),&uf('+1R33'),'|',',')),
if val(&uf('+1R9'))>0 then
&uf('+1W8#1'),break,fi,
fi,fi
else break fi),

Он ищет в других базах данный запрос. Если такой запрос есть выдаёт количество найденных. НО. Он ищет ПО ВСЕМ базам в файле.
У нас же есть меню с БД, где пользователь отмечает базы, в которых следует искать. Меню на скрипте, и там уже есть массив с отмеченными базами - осталось его как-то вытащить. Не хочется создавать лишний файл, т.к. во-первых хоть и мало весит, но занимает место, захламляет папку, а во-вторых лишние действия при добавлении новых баз.

Re: вернуть значение функции JavaScript в Unifor
Пользователь: Gena (IP-адрес скрыт)
Дата: 04, October, 2013 05:37

Возможно я не так понял, но если вы хотите, что бы результаты поиск в других базах данных могли динамически меняться в зависимости от того, на каких именно базах пользователь ставит галочки, то это как раз и не проблема. Суть в том, что вам в любом случае понадобится повторно перезапускать скрипт для поиск не во всей БД, а только в ее части. Попробуйте это сделать на Аяксе. Тогда у вас будет отдельный скрипт только для поиск по тем базам, перечень которых будет передаваться серверу в виде ГЕТ или ПОСТ запроса, а назадж он будет отдавать уже сформированный ХТМЛ, который вы вставляете вместо имеющегося у вас блока с результатами. Лучше всего сделайте под кнопками выбора баз для поиска кнопку обновления, которая или перезапустит всю страницу с учетом отмеченных галочек, или отправит Аякс запрос для обновления только результатов поиска по другим базам

Re: вернуть значение функции JavaScript в Unifor
Пользователь: ILV (IP-адрес скрыт)
Дата: 04, October, 2013 06:35

Не совсем - пока был вариант обновлять табличку других баз после нажатия на кнопке поиска ну или при перезагрузке страницы.

Как-то не подумала про Аякс. Отдельная кнопка для вывода найденных тоже хорошая идея) Спасибо, попробую.



Извините, только зарегистрированные пользователи могут писать в этом форуме.
This forum powered by Phorum.