Javascript函数调用ASP.NET

时间:2009-05-20 07:29:11

标签: c# asp.net javascript

我的Javascript函数调用服务器端回调函数。 当我发出alert()时,这工作正常。如果我评论alert(),则浏览器会发出警告..

我的功能是

 function callMe(){   
  var input = 'input parameter list'; 
  var val=  <%=gridCtrlUsers.ClientID%>.callbackControl.Callback(input);    
   // If I comment this alert ,it would throw a browser warning.
   alert(val)  // This prints true or false
 }

有人可以帮助我吗?

1 个答案:

答案 0 :(得分:2)

我同意何塞这看起来并不标准。

如果它是一个具有客户端API的自定义控件,那么您是否尝试过键入其标识符而不是使用<% %>标记...

您曾经提到过您使用的第三方工具包,但我知道DevExpress的组件(例如网格)具有允许您设置客户端实例名称的属性。您可以通过执行类似gridClientName.PerformCallback()的操作来获取网格然后从客户端代码回调。

如果是您正在使用的ComponentArt网格,那么我认为您可以使用ClientObjectId属性设置网格客户端名称,然后在Javascript中使用gridClientName.callback()

如果您只想从Javascript代码调用ASP.NET函数,则可以使用ASP.NET脚本管理器AJAX控件。我将在下面给你一个例子......

<asp:ScriptManager ID="ScriptManager1" runat="server" EnablePageMethods="True">
</asp:ScriptManager>
<script runat="server">

    [System.Web.Services.WebMethod]
    public static String Msg()
    {
        String userName = "Chalkey";

        return userName;
    }
</script>

<script type="text/javascript">
    PageMethods.Msg(OnSucceed);

    function OnSucceed(result)
    {
        alert(result);
    }
</script>

希望其中一些有用!的:)