Модераторы: gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Динамически зарегать и выполнить функ-ю javascript, в обработчике asp.net кнопки  
:(
    Опции темы
Rockie
Дата 16.6.2012, 13:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1143
Регистрация: 23.4.2006

Репутация: нет
Всего: 31



Добрый день!

Сделал вебчасть на ASP.NET(sharepoint). У меня есть кнопка, для которой в btn_OnClick я произвожу определенные действия. Мне нужно после отрабатывания кода в этой кнопке, после загрузки страницы(кнопка ведь вызовет postback?) зарегестрировать свою javascript -функцию и сразу запустить(alert ниже приведен для примера, на самомо деле мне нужно дергать функции sharepoint-а).

я пробовал пихать код просто в Response.Write
Код

Context.Response.Write("<script type='text/javascript'>alert('This message is from event handler');</script>");

все отлично работает, но мне нужно запустить свою более сложную функцию. Запустить примерно такое в Response.Write у меня уже не получается:
Код

<script type='text/javascript'>f(); function f() { alert('This message is from event handler'); }</script>

то есть как понимаю мне надо эту функцию сначала зарегестрировать, а потои "дёрнуть". 
Пробую так зарегестрировать, вроде бы регистрируется, но не отрабатывает
Код

                                   string sMyGreatScript = @"<script type=""text/javascript"">function f(){alert('great message');}</script>";
                                   this.Page.ClientScript.RegisterClientScriptBlock(this.GetType(), "onload", sMyGreatScript, false);

также не уверен что делаю правильно с "onload" - мне надо запускать _после_ загрузки страницы(после PostBack?). 


--------------------
Чтобы иметь большой гардероб - надо иметь большой гардероб.
PM   Вверх
IBS
Дата 17.6.2012, 16:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 214
Регистрация: 29.7.2008
Где: Белоруссия

Репутация: 1
Всего: 6



По данному вопросу не шарю, но смущает, что в скрипте функция сначала вызывается, а потом описывается.

Код

<script type='text/javascript'>f(); function f() { alert('This message is from event handler'); }</script>


В таком варианте точно работать не будет:

Код

<script type='text/javascript'>f();</script>

<script type='text/javascript'>function f() { alert('This message is from event handler'); }</script>

PM MAIL   Вверх
Rockie
Дата 21.6.2012, 17:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1143
Регистрация: 23.4.2006

Репутация: нет
Всего: 31



IBS, спасибо за ответ!
па ходу мне надо было скомбинировать первый и второй варианты, в таком варианте уже заработало:

Код
string sMyGreatScript = @"<script type=""text/javascript"">MyOfficeEdit(); function MyOfficeEdit(){EditDocumentButton = new ActiveXObject(""SharePoint.OpenDocuments.1"");if (EditDocumentButton){var strDocument=""" + sUrl + @""";var varProgID=""SharePoint.OpenDocuments"";EditDocumentButton.EditDocument(strDocument, varProgID);}}</script>";                                    this.Page.ClientScript.RegisterClientScriptBlock(this.GetType(), "onload", sMyGreatScript, false);


Это сообщение отредактировал(а) Rockie - 21.6.2012, 17:33


--------------------
Чтобы иметь большой гардероб - надо иметь большой гардероб.
PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
Любитель
Mymik
mr.DUDA

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Любитель, Mymik, mr.DUDA.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Разработка под ASP.NET | Следующая тема »


 




[ Время генерации скрипта: 0.0536 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.