从服务器端在这里我想ASP.NET AJAX调用客户端功能 [英] Call Client Side function from Server side where i want to ASP.NET ajax

查看:106
本文介绍了从服务器端在这里我想ASP.NET AJAX调用客户端功能的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有客户端按钮事件。点击呼叫sgnPdf(ID)后,如果我可以签署PDF。

I have Client-Side button event. After click call sgnPdf(ID) if I can sign PDF.

[MyForm.aspx]

[MyForm.aspx]

 <script type="text/javascript">
    <% if (ViewData.CanSignPdf){ %>
    $(function() {
        $("#<%=btnSend.ClientID %>").click(function() {
            if ($('.IgnoreCheckBox').is(':checked')) {
                sgnPdf(<%=ViewData.NoticeID %>);
                return false;
            };
        });
    });
    <% } %>
</script>

但我需要后,按一下按钮调用从服务器端此功能。

But I need call this function from Server side after button click.

[MyForm.aspx.cs]

[MyForm.aspx.cs]

  protected void BtnSendClick(object sender, EventArgs e)
    {
        FormUnbindData();
        SaveMYData();
        //Here i want call client function sgnPdf(ID). How can I do this?
        ShowMyMessage();
    }

OK,你需要做的只是简单。例如呼叫提醒(信息)在那里。

OK, you need to do just simply. For example call alert("message") in there.

好了,它的作品!但我需要调用客户端从服务器端(C#)方法(JavaScript)的同步,becouse客户端的方法没有启动,直到服务器端方法结束(例如button_click事件)。

Ok, its works!!! but i need call client-side method(javascript) from server-side(C#) synchronously, becouse client-side method not starting until server-side method ends (for example button_click event).

我试试这个:

            ScriptManager.RegisterStartupScript(this.Page, this.Page.GetType(), "anyId", "<script type='text/javascript'>alert('This is my alert message');</script>", true);

和不采取行动,什么都没有。

and no action, nothing.

推荐答案

使用此按钮时,点击:

 ClientScript.RegisterClientScriptBlock(Page, typeof(Page),sgnPdf(ID), true); 

OR
    <asp:Button OnClientClick = "sgnPdf(ID)"/>

使用这种在页面加载:

RegisterStartupScript("Unique key", "sgnPdf(ID);"); 

下面是一个参考

这篇关于从服务器端在这里我想ASP.NET AJAX调用客户端功能的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆