Используя Ajax для вызова функции code-behind? - PullRequest
0 голосов
/ 13 августа 2010

У меня есть функция java-script, которая отображает параметры на веб-странице, и функция C #, которая хранит настройки в базе данных.Мне нужно, чтобы указанный java-скрипт также выполнял мою функцию C #.Я думаю, что это возможно с AJAX, но я не совсем уверен (я никогда раньше не использовал AJAX).Я прочитал несколько учебных пособий ( w3schools ), однако ни один из них не использует файлы кода C #.Чтение ТАК, я нашел это , но я также не мог заставить его работать.Если то, что я делаю, возможно, может кто-нибудь помочь мне пройти через это или указать мне правильное направление?

Ответы [ 2 ]

1 голос
/ 13 августа 2010

Возможно, вы сможете использовать Microsoft AJAX / UpdatePanel , но я этим не пользовался, и любые реализации, которые я видел, впоследствии приводили к проблемам в дальнейшем.

В противном случае взгляните на Jquery AJAX .Это может помочь сделать один интересующий вас AJAX-вызов. Тогда может быть быстрее / проще создать метод веб-службы, который можно вызывать напрямую из AJAX, и абстрагировать соответствующий код, так что его можно использовать как вASPX-код на стороне сервера и JS-код на стороне клиента.

0 голосов
/ 13 августа 2010

Чтобы подробнее узнать о подходе UpdatePanel, вы можете сделать следующее:
1. Добавить UpdatePanel на свою страницу.
2. Внутри UpdatePanel добавьте Button.Стиль, чтобы его не было видно.Добавьте обработчик OnClick к кнопке, которая вызывает ваш код C #.
3. В вашем JavaScript добавьте код, чтобы нажать скрытую кнопку

<asp:UpdatePanel ID="MyUpdatePanel" runat="server" UpdateMode="Conditional">
    <ContentTemplate>
        <asp:Button ID="HiddenButton" runat="server" Text="" OnClick="HiddenButton_Click" Style="display: none;" UseSubmitBehavior="False" />
     </ContentTemplate>
</asp:UpdatePanel>

function MyJavaScript() {
    var hiddenButton = $get("<%=HiddenButton.ClientID %>");
    if (hiddenButton != null) {
       hiddenButton.click();
    }
}
...