jquery獲取表單數據ajax提交,多個相同name項數據獲取,serialize()和serializeArray()區別,ajax提交出現415和400狀態碼

serialize()序列化表單元素爲字符串,提交地址欄那種的數據格式。

serializeArray()序列化表單元素爲JSON數據。

獲取表單元素提交,包含多個重複name的。提交如出現415錯誤,在ajax中添加contentType即可,提交出現400錯誤是沒有對數據做轉換,使用JSON.stringify()轉換格式即可

        $("#submit").click(function () {
            var cprForm = $("#cprForm").serializeArray()

            var objs = []
            $.each(cprForm,function (i,n) {
                var obj = {}
                obj[n.name]=n.value
                objs.push(obj)
            })

            var data = JSON.stringify(objs)
            $.ajax({
                type:'post',
                url:'/trainings/tutorErp',
                data:data,
                contentType:'application/json',
                success:function () {
                    console.log("ok")
                }
            })
        })

用此方法獲取表單數據格式如下

          var cprForm = $("#cprForm").serializeArray()

這種數據對後臺處理不便,對數據進一步處理,數據格式如下,後臺用@RequestBody List<Map>接受處理數據

            var objs = []
            $.each(cprForm,function (i,n) {
                var obj = {}
                obj[n.name]=n.value
                objs.push(obj)
            })

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章