【问题标题】:calling ASP function from javascript从 javascript 调用 ASP 函数
【发布时间】:2012-06-14 18:53:12
【问题描述】:

你好我有这个问题我试图找到一种方法来从 asp 控制器调用 javascript 函数,我在这里做的是代码:

    <script type="text/javascript">
      function hello() { 
        alert("hello world")
    }
</script>
<  /head>
 <body>
<form id="form1" runat="server">
<div>
    <asp:Button ID="buttonme" runat="server" OnClientClick="javascript:hello()" 
 Text="click" />

现在假设我在函数后面有这段代码

    Public Sub msg()
      MsgBox("hello world")
    End Sub 

我想从一个javascript函数中调用它,所以它就像控制器----call---> javascript ---call--->后面的代码

有没有办法做到这一点

【问题讨论】:

  • 由于这是一个网络应用程序,当MsgBox被触发时,它只会在你的服务器上弹出一个框,它不会在客户端弹出一个框。您需要使用 ajax 才能将代码隐藏文件用于函数。
  • @Juventus18 感谢您的回复,这只是一个例子,它可以做任何事情
  • 看看他的回答:stackoverflow.com/q/10893954/1268570 这是使用 Rest 服务的替代方案(没有 .svc 文件)

标签: c# asp.net vb.net


【解决方案1】:

在 Web 应用程序的某个类中定义您的方法。

[System.Web.Services.WebMethod]
public static string Msg()
{
     return "Hello world";
}

在您的 aspx 页面中添加一个具有 EnablePageMethods=true 的脚本管理器

<asp:ScriptManager ID="someId" runat="server" EnablePageMethods="true">
</asp:ScriptManager>

在javascript中调用方法

<script language="javascript" type="text/javascript">
    PageMethods.Msg(onSuccess);
    function onSuccess(response)
    {
        alert(response);
    }
</script>

【讨论】:

    【解决方案2】:

    您必须以某种形式使用 AJAX 并公开您想通过 HTTP 调用的 ASP.NET 方法。

    【讨论】:

    • 没有ajax还有其他方法吗
    • 不是,不是。如果您希望浏览器端代码调用服务器端代码,则通信机制是通过 AJAX(XMLHttpRequest 对象)。使用 AJAX 有什么问题? jQuery 让它很容易做到。
    • 我知道这并不难,我有一个链接按钮,它调用 javascript 函数在我的项目中打开一个新标签,但在打开这个标签之前我需要更新一个会话,所以我的问题知道是在打开新标签之前更新此会话
    • 更新 ASP.NET 会话?任何从浏览器返回到服务器的 HTTP 请求都会执行此操作。您的弹出窗口中的内容是否来自您的应用程序?
    • 考虑到这个 OnClientClick="var url = 'CIP_frmCIPEventExplorePdf.aspx?ViewPDF=1&intCIPEventID=' + $('#intCIPEventID').val();parent.showNewTab(url, 'CIP 图表 - PDF ', 'CIP');"> 我希望这个控件转到一个代码隐藏函数更新会话“”然后“”打开新页面,如果你重新加载页面,这个新页面会生成一个带有旧会话的 pdf 文件你得到更新的数据
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-02-28
    • 2021-12-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多