powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / SharePoint [игнор отключен] [закрыт для гостей] / Вызов JS функции из C#
3 сообщений из 3, страница 1 из 1
Вызов JS функции из C#
    #38501801
Vitell
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Привет всем. Столкнулся с небольшой проблемой.
Необходимо вызвать JS скрипт из C# по нажатию кнопки. Делаю в ASP странице тег
Код: javascript
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
<script type="text/javascript">
    function Call() {
        try {
            var context = SP.ClientContext.get_current();
            this.web = context.get_web();
            var listId = SP.ListOperation.Selection.getSelectedList();
            var list = this.web.get_lists().getById(listId);
            var items = SP.ListOperation.Selection.getSelectedItems(context);
            var itemId = items[0];
            this.listItem = list.getItemById(itemId.id);
                if (itemId.id != null) 
                {
                    alert('Выделен элемент с ID:' + itemId.id.toString());
                    
                }
            }
         catch (e) { alert('Не получилось! Ошибка:'+e.Message()); }
    }
</script>


Код: html
1.
<input id="Button2" runat="server" type="button" value="Click It!" onclick="Call()" />



Как мне передать серверу код выполнения клиентского JS? А ещё лучше отобразить результат в Label допустим.
...
Рейтинг: 0 / 0
Вызов JS функции из C#
    #38502574
gamu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Может так пойдет:
<script type="text/javascript">
function Call() {
try {
var context = SP.ClientContext.get_current();
this.web = context.get_web();
var listId = SP.ListOperation.Selection.getSelectedList();
var list = this.web.get_lists().getById(listId);
var items = SP.ListOperation.Selection.getSelectedItems(context);
var itemId = items[0];
this.listItem = list.getItemById(itemId.id);
if (itemId.id != null)
{
$('#<% Label.ClientID %>').text= 'Выделен элемент с ID:' + itemId.id.toString();
}
}
catch (e) { alert('Не получилось! Ошибка:'+e.Message()); }
}
</script>
С методом для текста метки могу ошибаться, там может быть val.
Для запука можно использовать события клиентской стороны какого нибудь контрола. Елм jQuery не подключен можно попробовать сделать getElementById('<% Label.ClientID %>').
...
Рейтинг: 0 / 0
Вызов JS функции из C#
    #38504503
Vitell
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
gamu,
Спасибо за ответ!
Решил примерно так же. С большим костылем правда как я считаю.
в странице ASP объявил вот так:
Код: plaintext
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.
<asp:Button ID="Button2" runat="server" Text="Предварительный просмотр" 
    OnClientClick="return Call();" OnClick="Btn_Click" Width="350px" />
<p>
    &nbsp;</p>

<input type="hidden" name="id" id="id" />   // вот в этот элемент пишу свой ItemId.id
<script type="text/javascript">
    function Call() {
        try {
            var context = SP.ClientContext.get_current();
            this.web = context.get_web();
            var listId = SP.ListOperation.Selection.getSelectedList();
            var list = this.web.get_lists().getById(listId);
            var items = SP.ListOperation.Selection.getSelectedItems(context);
            var itemId = items[0];
            this.listItem = list.getItemById(itemId.id);
            if (itemId.id != null) {
                SP.UI.Notify.addNotification('Подождите выполняется загрузка документа с ID:'+itemId.id);
                document.getElementById('id').value = itemId.id;
                return true;
            }
            }
         catch (e) {}
     }
</script>



Потом в методе Button2.OnClick пиши просто
Код: c#
1.
string IdParam = Request["id"].ToString();


В общем работает. Пока сделал так.
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / SharePoint [игнор отключен] [закрыт для гостей] / Вызов JS функции из C#
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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