Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M [игнор отключен] [закрыт для гостей] / вызов кашовского метода из js / 8 сообщений из 8, страница 1 из 1
18.04.2008, 14:33
    #35264783
yot
yot
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вызов кашовского метода из js
Добрый день, сегодня столкнулся с необходимостью вызова из js серверного метода, причем передаю имя серверного метода из js, чуть не забыл отметить что серверный метод возвращает некоторое значение
вот пример:
//класс Test
ClassMethod List(){
Q "111"
}

//csp страница
var str = #server(Test.List())#
вот так естественно все работает и переменной str присваивается значение 111

но, когда я пытаюсь сделать тоже самое, но только с использование функции eval вываливается ошибка

function mmm() {
met = "Test.List()"
str = "#server("+met+")#;"
func = "function pp(){tt = "+str+"};pp();";
eval(func);
alert(tt)
}

ошибка вот такая:

Ошибка: <UNDEFINED>zOnPageHEAD+9^csp.test.1 *met
Ошибка: 5002
CSP страница: /csp/koleso/test.csp
Область: KOLESO
Класс: csp.test
Программа: csp.test.1
Расположение: zOnPageHEAD+9
Line: Write " str = """_($case(%session.BrokerImplementation,1:"cspRunServerMethod",2:"cspHttpServerMethod",:"
cspSelectServerMethod"))_"('"_(##class(csp.test).Encrypt($listbuild(""+met+":csp.test"))_
$select(%session.UseSessionCookie'=2:"&CSPCHD="_%session.CSPSessionCookie,1:""))_"');""",!
...
Рейтинг: 0 / 0
18.04.2008, 14:45
    #35264844
krvsa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вызов кашовского метода из js
yotно, когда я пытаюсь сделать тоже самое, но только с использование функции eval вываливается ошибка
Так это естесствено. Поскольку #server()# обрабатывается в Каще перед выдачей страницы в браузер...
А вы пытаетесь JS заставить сделать это да еще и на клиенте. Такой "трамвай" не поедет.
...
Рейтинг: 0 / 0
18.04.2008, 15:01
    #35264909
krvsa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вызов кашовского метода из js
yotстолкнулся с необходимостью вызова из js серверного метода
А сколько у тебя таких методов (в штуках)? Много?
...
Рейтинг: 0 / 0
18.04.2008, 15:21
    #35265016
yot
yot
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вызов кашовского метода из js
пока 2, но их колличество постоянно растет.
сейчас просто копирую вызов, но мне это очень не нравиться, то была бы одна функция которую я вызывал бы, а сейчас занимаюсь клонированием этой функции где меняется 1 лишь строка (
...
Рейтинг: 0 / 0
18.04.2008, 15:48
    #35265139
krvsa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вызов кашовского метода из js
yotсейчас занимаюсь клонированием этой функции где меняется 1 лишь строка (
У меня есть другое предложение...

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
...
<script language="javascript">
// Вызов Кащейского метода
function Run(Method) {
   ok=#server(..cRun(Method))#
}
</script>
...
<csp:method name="cRun" arguments="Method:%String" returntype="">  
   // Вызов Кащейского метода
   x @Method
   q 
</csp:method>
...

Т.е. идея прежняя. JS-су JS-совское... А Кащею Кащейское...
...
Рейтинг: 0 / 0
18.04.2008, 16:18
    #35265288
yot
yot
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вызов кашовского метода из js
хм
Действительно Каше-кашу, скрипту-скрипт, в этом я абсолютно согласен...
у меня правда все цсп в классах, так что (именно) так не получиться, а вот вызвать метод и ему в параметрах передать имя метода который этот метод должен вызвать, запросто! спасибо за помощь... что-то я даже не подумал так попробовать
...
Рейтинг: 0 / 0
18.04.2008, 16:59
    #35265421
Александр Коблов
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вызов кашовского метода из js
Есть ещё $zobjclassmethod
http://localhost:57772/csp/docbook/DocBook.UI.Page.cls?KEY=AZOBJ_classmethod
--------
Cache for Windows (x86-32) 2008.1 (Build 401U) Tue Feb 26 2008 11:46:52 EST
...
Рейтинг: 0 / 0
18.04.2008, 17:34
    #35265523
yot
yot
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
вызов кашовского метода из js
я знаю, его и юзаю

Код: plaintext
1.
2.
3.
4.
5.
6.
ClassMethod RunClass(Class,Method){
	if ($G(Class) = "")||($G(Method) = "")  Q ""
	s str = $zobjclassmethod(Class,Method)
	Q str
}

...
Рейтинг: 0 / 0
Форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M [игнор отключен] [закрыт для гостей] / вызов кашовского метода из js / 8 сообщений из 8, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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