Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/434.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 从后端在页面中运行JavaScript(AJAX)?_C#_Javascript_Asp.net - Fatal编程技术网

C# 从后端在页面中运行JavaScript(AJAX)?

C# 从后端在页面中运行JavaScript(AJAX)?,c#,javascript,asp.net,C#,Javascript,Asp.net,我不太熟悉将JavaScript集成到网站中,但我会经常在我的网站中使用它 以下是一个例子: 假设我有这个功能: showAlert() 假设我有: <div id="some_div"> </div> 有人能给我举个例子吗 如果我有一个按钮,用户点击它,这将在后端引发一个事件,并在我的C#文件中调用一些方法。然后我的C#文件应该能够调用前端的其他javascript方法,该方法将调用showAlert()并在div中显示警报 这是我似乎找不到任何信息的地方 向

我不太熟悉将JavaScript集成到网站中,但我会经常在我的网站中使用它

以下是一个例子: 假设我有这个功能:

showAlert()
假设我有:

<div id="some_div">

</div>

有人能给我举个例子吗 如果我有一个按钮,用户点击它,这将在后端引发一个事件,并在我的C#文件中调用一些方法。然后我的C#文件应该能够调用前端的其他javascript方法,该方法将调用showAlert()并在div中显示警报

这是我似乎找不到任何信息的地方

向服务器传递信息和从服务器传递信息的基本思想。如果您能帮上忙,我们将不胜感激


谢谢

您最好使用像jquery这样的框架,然后绑定到按钮,调用服务并处理响应。下面是一个快速的例子

$(document).ready(function()
    $('#Button1').bind('click', function () { 
        // This grabs the page you are in so that you can call it correctly
        var pagePath = window.location.pathname;  
        var testId = $("#some_div").val();
        var url = pagePath + "/TestService";          
        $.post(url, { id: testId },
            function (data) {
                showAlert(data);
            }
        });
    };
});
首先,您需要确保文档在某个时刻准备就绪。绑定允许在加载文档时绑定按钮。然后,通过单击它,您可以执行匿名函数,该函数获取testId,调用您的服务,并在成功回调中处理数据响应

希望这能让你朝着正确的方向开始

编辑:添加后端webforms“服务”曝光

这将允许您调用页面上公开的“WebMethod”。有关这方面的更多帮助,请参阅以下链接

编辑:在webforms中执行此类方法时的其他注意事项。

您最好使用jquery这样的框架,然后绑定到按钮,调用服务并处理响应。下面是一个简单的例子

$(document).ready(function()
    $('#Button1').bind('click', function () { 
        // This grabs the page you are in so that you can call it correctly
        var pagePath = window.location.pathname;  
        var testId = $("#some_div").val();
        var url = pagePath + "/TestService";          
        $.post(url, { id: testId },
            function (data) {
                showAlert(data);
            }
        });
    };
});
首先,您需要确保文档在某个时刻准备就绪。Bind允许在加载文档时绑定按钮。然后,通过单击它,您可以执行匿名函数,获取testId,调用服务,并在成功回调中处理数据响应

希望这能让你朝着正确的方向开始

编辑:添加后端webforms“服务”曝光

这将允许您调用页面上公开的“WebMethod”。有关这方面的更多帮助,请参阅以下链接

编辑:在webforms中执行此类方法时的其他注意事项。

您可能想开始阅读Ajax。否则,这太宽泛了,无法在这里正确回答。回调函数还不够吗?像
jQuery.ajax
及其成功回调。你能给我指一个链接或教程吗?还要注意,后端永远不能“在前端调用javascript方法”,您所能做的就是执行从前端到后端的ajax调用,并处理返回的任何内容。@PeterHerdenborg非常好,这对于理解前端异步技术是如何工作的至关重要。你必须疏远Webforms的心态,习惯于在客户端调用和处理你的调用。否则,这太宽泛了,无法在这里正确回答。回调函数还不够吗?像
jQuery.ajax
及其成功回调。你能给我指一个链接或教程吗?还要注意,后端永远不能“在前端调用javascript方法”,您所能做的就是执行从前端到后端的ajax调用,并处理返回的任何内容。@PeterHerdenborg非常好,这对于理解前端异步技术是如何工作的至关重要。你必须疏远Webforms的心态,习惯于在客户端打电话和处理电话。你能不能也展示一下这在它的后端部分是如何工作的?另外,我的网站不是MVC。@米洛你的后端是什么?网络表单?您是否公开了任何服务端点?是的,是web表单。公共部分类WebForm1:System.Web.UI.Page{受保护的无效页面{u加载(对象发送方,事件参数e){}}}}谢谢,但现在我只是想知道,我是否希望将整个应用程序都放在一个单独的程序中?如何获取页面名称等信息?访问实例变量的正确方法是什么?@Milo pageName将由javascript提取。它会查看您当前所在的页面以确定位置。至于你剩下的问题,我想这是一个全新的架构蠕虫,你能不能也展示一下它的后端部分是如何工作的?另外,我的网站不是MVC。@米洛你的后端是什么?网络表单?您是否公开了任何服务端点?是的,是web表单。公共部分类WebForm1:System.Web.UI.Page{受保护的无效页面{u加载(对象发送方,事件参数e){}}}}谢谢,但现在我只是想知道,我是否希望将整个应用程序都放在一个单独的程序中?如何获取页面名称等信息?访问实例变量的正确方法是什么?@Milo pageName将由javascript提取。它会查看您当前所在的页面以确定位置。至于你剩下的问题,我认为这是一个全新的架构蠕虫