首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Ajax JQuery将数据传递给POST方法

Ajax JQuery将数据传递给POST方法
EN

Stack Overflow用户
提问于 2013-07-12 13:18:34
回答 5查看 6.2K关注 0票数 3

我是javascript和jquery的新手,如果可能的话,我希望得到一些帮助。我搜索并试图使它工作,但我想我错过了一些简单的东西。

我的cs文件中有以下方法(CeduleGlobale.aspx.cs)

代码语言:javascript
运行
复制
[WebMethod]
     public static void SetSession(string data)
     {
         HttpContext.Current.Session["salesorderno"] = data;
     }

我的ascx文件中也有一些javascript。

代码语言:javascript
运行
复制
<script type="text/javascript">
    function SetSession() {

        var request;

        var values = 'fred';
        request = $.ajax({
            type: "POST",
            url: "CeduleGlobale.aspx/SetSession",
            data: values,
            contentType: "application/json; charset=utf-8",
            dataType: "json"
        });

        request.done(function () {
            alert("Finally it worked!");
        });

        request.fail(function () {
            alert("Sadly it didn't worked!");
        });


    }
</script>

脚本中的函数由

代码语言:javascript
运行
复制
<dx:ASPxCheckBox ID="cbxHold" runat="server" AutoPostBack="true" Text="OnHold" ClientSideEvents-CheckedChanged="SetSession">
</dx:ASPxCheckBox>

我一直得到的结果是“很遗憾,它没有起作用!”

我知道问题不是与url的路径相关的,因为当我将NULL作为数据传递并且没有参数的方法时,它可以工作。

参数和数据是我所相信的。

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2013-07-12 13:21:39

应该将序列化的JSON传递给方法:

代码语言:javascript
运行
复制
var values = JSON.stringify({data:'fred'});
request = $.ajax({
    type: "POST",
    url: "CeduleGlobale.aspx/SetSession",
    data: values,
    contentType: "application/json; charset=utf-8",
    dataType: "json"
});
票数 2
EN

Stack Overflow用户

发布于 2013-07-12 13:22:39

您指定要发送JSON,但没有将值序列化为JSON,因此尝试将请求更改为以下内容:

代码语言:javascript
运行
复制
request = $.ajax({
        type: "POST",
        url: "CeduleGlobale.aspx/SetSession",
        data: JSON.stringify({data: values}), // 'stringify' the values to JSON
        contentType: "application/json; charset=utf-8",
        dataType: "json"
    });
票数 2
EN

Stack Overflow用户

发布于 2013-07-12 13:22:22

json”不是,也不是object

使用对象符号:

{"myattr":"fred"} //您也可以做{myattr:"fred"}

然后使用JSON.stringify将其转换为json对象的字符串表示。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17615837

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档