c# – 在另一个页面上从javascript调用页面的webmethod

前端之家收集整理的这篇文章主要介绍了c# – 在另一个页面上从javascript调用页面的webmethod前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
是否可以在另一个页面上从 javascript调用[WebMethod]归因的方法?即在名为PageTwo.aspx的页面上使用以下jquery ajax从脚本调用
$.ajax(
        {
            type: "POST",url: "pageone.aspx/PageOneMethodOne",data: "{}",contentType: "application/json; charset=utf-8",dataType: "json",success: function(msg)
                     {
                        //something
                     }
        }
    );

PageOne.aspx.cs包含

[WebMethod]
    public string PageOneMethodOne()
    {
        return "hello world";
    }

解决方法

只要您指定正确的URL,这是可能的.请查看以下表格:
<form id="form1" runat="server">
<div>
    <div id="messages">
    </div>
    <input type="text" id="echo" /><input id="echoSubmit" value="Echo!" type="button"/>
</div>

它是相应的Javascript:

<script type="text/javascript">
    $(function () {
        $('#echoSubmit').click(function () {
            var mes = $('#echo').val();
            var jsonText = JSON.stringify({ message: mes });

            $.ajax({
                type: "POST",url: "SampleForm.aspx/SendMessage",data: jsonText,success: function (msg) {
                    $("#messages").append(msg.d);
                }
            });
        });
    });
</script>

单击echoSumbit按钮将输入框的内容发送到另一个控件SampleForm.aspx上的WebMethod.以下是该表单的代码隐藏:

public partial class SampleForm : System.Web.UI.Page
{
    [WebMethod]
    public static string SendMessage(string message)
    {
        return message;
    }
}

Chat.aspx中的单击处理程序将输入值发送到SampleForm.aspx.cs,后者返回发送的值.返回的值将附加到.ajax调用的success方法中Chat.aspx中的div.

猜你在找的C#相关文章