>  기사  >  웹 프론트엔드  >  jquery ajax가 배열을 배경으로 전달하지 못했습니다.

jquery ajax가 배열을 배경으로 전달하지 못했습니다.

一个新手
一个新手원래의
2017-09-18 09:17:361898검색

처음에는 Traditional:true가 없어도 된다고 생각했는데, 나중에 Traditional을 사용하지 않게 되면서 백그라운드에서 selectUsers의 값을 얻을 수 없다는 걸 발견했기 때문에 Traditional의 기본값은 false인 것이 확실합니다.

제출된 매개변수가 Array({selectUsers:[value,value,value]})인 경우,

false인 경우 제출 시 "selectUsers[]=value&selectUsers[]=value"가 됩니다. ㅋㅋㅋ

]

true로 설정하면

0 ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ
ckee o ㅋㅋㅋ ]
0x1
1y1
2 z1
m2[ckee] o1
name nihao
목록 제출 시 "selectUsers=value&selectUsers=value"가 됩니다. [ 3]
0 x
1 y
2 z
ckee o
m2 [객체+객체]

이러한 방식으로 String[] ids=request를 사용할 수 있습니다. 백그라운드에서 사용됩니다. .getParameterValues("selectUsers"); 값을 가져옵니다.
공식 문서에서는 다음과 같이 설명합니다.
traditional
Type: Boolean
기존 방식으로 데이터를 직렬화하려면 true로 설정하세요.

전통적인 스타일의 매개변수 직렬화를 사용하려면 이를 true로 설정하세요

frontend js

 var obj2 = {
                "name": "nihao",
                "list": ["x", "y", "z"],
                "ckee": "o",
                "m2": {
                    "name": "zzzzz",
                    "list": ["x1", "y1", "z1"],
                    "ckee": "o1"
                }
            }

            $.ajax({
                type: "POST",
                url: "/Home/SubmitForm",
                data: obj2,
                dataType: "text",
                async: false,
                traditional: true,
                success: function (data) {
                    var rows = data.rows;

                }
            });
            $.ajax({
                type: "POST",
                url: "/Home/SubmitForm",
                data: obj2,
                dataType: "text",
                async: false,
                traditional: false,
                success: function (data) {
                    var rows = data.rows;

                }
            });

backend

        [HttpPost]
        public string SubmitForm(mymode request)
        {
            if (request != null)
            {
                // 
            }
            return "操作成功。";
        }

위 내용은 jquery ajax가 배열을 배경으로 전달하지 못했습니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.