【问题标题】:Problem Ajax with Jquery and ASP.NET问题 Ajax 与 Jquery 和 ASP.NET
【发布时间】:2011-09-04 21:14:11
【问题描述】:

我在这个论坛上阅读了很多关于此的内容,但我无法让它发挥作用。

我想在我的 asp.net Web 应用程序上使用 ajax 功能

这里是 VerifMain.aspx 上的 Javascript

$(document).ready(function () {

//menu()
$("#btnImprimer").click(function () {
    $.ajax({
        type: "POST",
            url: "/VerifMain.aspx/Lol",
            data: "{}",
            contentType: "application/json; charset=utf-8",
            dataType: "json",
            success: function (msg) {
                alert("Good"); 
            },
            error: function (msg) {
                alert(msg);
            }
        });
    });
});

这是 VerifMain.aspx.vb 中的服务器代码

Partial Public Class _Default
    Inherits Page
    <WebMethod()> _
    Public Shared Sub Lol()
        //TO DO
    End Sub
End Class

所以当我试图调用这个方法时,它会进入错误函数并且警报是“[object Object]”

我必须使用 JQuery,因为我工作的地方没有安装 Microsoft Ajax。

我真的需要帮助,我不明白我做错了什么,我只使用 ie7,几乎所有网站都被阻止。

谢谢!

祝你有美好的一天!

编辑: 大家好 感谢您的宝贵时间!

我通过删除部分类来修复它。

所以现在它只是服务器代码中的一个静态 Web 方法并且可以正常工作。

<WebMethod()> _
Public Shared Sub Lol()
    //TO DO
End Sub

说实话,我不明白它是如何工作的

但感谢您的快速回复。

这是最好的网站,我现在会在这里度过一些空闲时间;)

【问题讨论】:

  • 您可以发布您找到的解决方案作为您问题的答案,并将其标记为已接受的答案! :)

标签: javascript jquery asp.net ajax vb.net


【解决方案1】:

只需检查味精:

error: function (msg) {
                var i,s="";
                for(i in msg) s += (s?"\n":"") + i + ": " + msg[i];
                alert(s);
            }

【讨论】:

    【解决方案2】:

    ASP.NET AJAX 修改了 3.5 中返回的 JSON。您需要访问d 属性,请参阅http://encosia.com/never-worry-about-asp-net-ajaxs-d-again。我不知道您的错误是什么,但是如果您将代码更改为以下内容,您会看到它:

    $(document).ready(function () {
    
    //menu()
    $("#btnImprimer").click(function () {
        $.ajax({
            type: "POST",
                url: "/VerifMain.aspx/Lol",
                data: "{}",
                contentType: "application/json; charset=utf-8",
                dataType: "json",
                success: function (data) {
                    alert("Good"); 
                },
                error: function (data) {
                    alert(data.d);
                }
            });
        });
    });
    

    【讨论】:

      【解决方案3】:

      尝试调用此方法只是为了再次测试它:

      <WebMethod()> _
      <ScriptMethod(ResponseFormat:=ResponseFormat.Json)> _
      Public Shared Function GetDate() As String
          Return Date.Now.ToString()
      End Function
      

      将网址替换为:

      url: "/VerifMain.aspx/GetDate",
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-02-24
        • 1970-01-01
        • 2010-10-16
        • 1970-01-01
        相关资源
        最近更新 更多