0

我有以下变量,通常将其发布到以下 Web 方法。

data: "{item:" + JSON.stringify(json) + ",step:" + JSON.stringify(john) + " }",

网络方法:

[WebMethod(EnableSession = true)]
        public static string GetCart(string item, string step)
        {

            HttpContext.Current.Session["f"] = item;
            HttpContext.Current.Session["l"] = step;

            return item;


        }

当我尝试添加以下变量时,未发布第三个变量(mytest)

data: "{item:" + JSON.stringify(json) + ",mytest:" + JSON.stringify(json) + ",step:" + JSON.stringify(john) + " }",

网络方法

[WebMethod(EnableSession = true)]
        public static string GetCart(string item, string step, string mytest)
        {

            HttpContext.Current.Session["f"] = item;
            HttpContext.Current.Session["l"] = step;
            HttpContext.Current.Session["mytest"] = mytest;
            return item;


        }

编辑

和帖子声明

$.ajax({

                type: 'POST',

                url: "mypage.aspx/GetCart",

                data: "{item:" + JSON.stringify(json) + ",mytest:" + JSON.stringify(json) + ",step:" + JSON.stringify(john) + " }",

                contentType: 'application/json; charset=utf-8',

                dataType: 'json'
4

1 回答 1

1

你需要双引号:

...
data: "{\"item\":" + JSON.stringify(json) + ",\"mytest\":" + JSON.stringify(json) + ",\"step\":" + JSON.stringify(john) + " }"
...

或者,您可以字符串化一次:

...
data: JSON.stringify({item: json, mytest: json, step: john })
...
于 2013-09-20T21:45:49.463 回答