当前位置:  开发笔记 > 编程语言 > 正文

使用JQuery调用WebMethod

如何解决《使用JQuery调用WebMethod》经验,为你挑选了2个好方法。

我无法从我的JQuery调用进入我的Search WebMethod.也许有人可以帮我指出正确的方向.

我还将所有内容打包成一个zip文件,如果有人想查看它以便仔细查看.

http://www.filedropper.com/jsonexample

谢谢瑞恩

    <%@ Page Language="VB" AutoEventWireup="false" CodeFile="Default.aspx.vb" Inherits="_Default" %>





    JSON Example
    





    
Search

这是default.aspx背后的代码

 Imports System.Data
    Imports System.Web.Services
    Imports System.Web.Script.Serialization

    Partial Class _Default
        Inherits System.Web.UI.Page

         _
        Public Shared Function Search(ByVal text As String) As IEnumerable
            Return "test"
        End Function

    End Class

Dave Ward.. 15

要解决这样的问题,首先要做的是在Firebug中观看它.

如果单击"搜索"链接并在Firebug的控制台中观察POST请求/响应,您将看到它丢失了500服务器错误:无效的JSON原语.

原因是因为未引用"数据"JSON文字中的键/值标识符.第17行应该是:

data: "{'text':'" + search + "'}",

然后,所有都将按预期工作.

注: 建议的数据{测试:搜索}将无法正常工作.如果您为jQuery提供实际的JSON文字而不是字符串,它会将其转换为test = search和POST的键/值对,而不是JSON.这也将导致ASP.NET AJAX ScriptService或PageMethod抛出Invalid JSON Primitive错误.



1> Dave Ward..:

要解决这样的问题,首先要做的是在Firebug中观看它.

如果单击"搜索"链接并在Firebug的控制台中观察POST请求/响应,您将看到它丢失了500服务器错误:无效的JSON原语.

原因是因为未引用"数据"JSON文字中的键/值标识符.第17行应该是:

data: "{'text':'" + search + "'}",

然后,所有都将按预期工作.

注: 建议的数据{测试:搜索}将无法正常工作.如果您为jQuery提供实际的JSON文字而不是字符串,它会将其转换为test = search和POST的键/值对,而不是JSON.这也将导致ASP.NET AJAX ScriptService或PageMethod抛出Invalid JSON Primitive错误.



2> flesh..:

您需要执行以下操作(C#):

WebMethod必须是 public static

必须使用[WebMethod]属性进行修饰

您需要在.aspx页面上使用ScriptManager

设置ScriptManager EnablePageMethods="true"

这里有一些示例javascript:

$().ready(function() {
    $(yourDropDownList).change(LoadValues);
});


function LoadValues() {
    PageMethods.YourMethod(arg1, CallSuccess, CallFailed);
}

function CallFailed(result) {
    alert('AJAX Error:' + result.get_message());
}

function CallSuccess(result) {
    //do whatever you need with the result
}

推荐阅读
周扒pi
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有