无法使用jquery ajax调用aspx页面web方法

本文关键字:aspx 页面 web 方法 调用 ajax jquery | 更新日期: 2023-09-27 18:10:25

这是我的ajax调用

$(document).ready(function () {
         $("#btnSubmit").click(function () {
             alert("I am in ?");
             $.ajax({
                 type: "POST",
                 url: "TestNew2.aspx/DisplayData",
                 data: "{}",
                 contentType: "application/x-www-form-urlencoded",
                 dataType: "text",
                 //success: function (msg) {
                 //    // Replace the div's content with the page method's return.
                 //    $("#btnSubmit").text(msg.d);
                 //    alert(msg.d);
                 //}

                 success: function (result, status, xhr) {
                     document.getElementById("lblOutput").innerHTML = xhr.responseText
                 },
                 error: function (xhr, status, error) {
                     alert(xhr.error);
                 }

             });
         });

     });

和我的Web方法[WebMethod] public static string DisplayData() { return DateTime.Now.ToString(); }

在aspx页面上调用web方法时获取aspx页面。下面是jQuery代码谁能指出哪里不对吗?因为web方法没有被调用

无法使用jquery ajax调用aspx页面web方法

Try Like

            $.ajax
                ({
                    url: " URL",
                    data: "{ 'name' : 'DATA'}",
                    dataType: "json",
                    type: "POST",
                    contentType: "application/json; charset=utf-8",                   
                    async: true,
                    dataFilter: function (data) { return data; },
                    success: function (data) 
                    {
                        alert(data);
                    },
                    error: function (XMLHttpRequest, textStatus, errorThrown) {
                        alert("error");
                    }
                });

 jQuery.ajax({
    type: "POST",
    url: "Login.aspx/checkUserNameAvail",
    contentType: "application/json; charset=utf-8",
    data: "{'iuser':'" + userid + "'}",
    dataType: "xml",
    success: function (msg) {
        $(msg).find("Table").each(function () {
            var username = $(this).find('UserName').text();
            if (username != '') {
                //window.location.replace('/iCalendar.aspx');
                alert('This username already taken..');
                $("#reguser").val('');
                $("#reguser").focus();
            }
            else {
            }
        });
    },
    error: function (d) {
    }
});

cs

[WebMethod(enableSession: true)]
    [ScriptMethod(ResponseFormat = ResponseFormat.Xml)]
    public static string checkUserNameAvail(string iuser)
    {
        try
        {
            iCalendarClass iC = new iCalendarClass();
            DataSet ds = iC.checkUserNameAvail(iuser);
            return (ds.GetXml());
        }
        catch
        {
            return null;
        }
    }