ajax使用json數據格式--無效的 JSON 基元


ajax使用json數據格式提交

一開始這么寫的

        var flobj = {
            UserId: userid,
            ForbidSDT: ForbidSDT,
            ForbidEDT: ForbidEDT
        }
        $.ajax({
            type: "POST",
            url: "/Limit/Forbid",
            contentType: "application/json", //必須有  
            dataType: "json", //表示返回值類型,不必須  
            data: { Types: chk_value, fl: flobj, remark: remark, tip: tip },
            success: function (jsonResult) {
                if (jsonResult.Code == 1)
                {
                    alert("添加成功");
                    $(target).parent().parent().find("input").attr("disabled", true);
                } else {
                    alert("添加失敗");
                }
            }
        });

提交的數據格式:

 

這種會報錯誤:

無效的 JSON 基元: Types

后來改了

        var flobj = {
            UserId: userid,
            ForbidSDT: ForbidSDT,
            ForbidEDT: ForbidEDT
        }
        $.ajax({
            type: "POST",
            url: "/Limit/Forbid",
            contentType: "application/json", //必須有  
            dataType: "json", //表示返回值類型,不必須  
            data: JSON.stringify({ Types: chk_value, fl: flobj, remark: remark, tip: tip }), 
            success: function (jsonResult) {
                if (jsonResult.Code == 1)
                {
                    alert("添加成功");
                    $(target).parent().parent().find("input").attr("disabled", true);
                } else {
                    alert("添加失敗");
                }
            }
        });

提交的數據格式:

 

記錄:

data必須是一個“表示JSON對象的字符串”,而不是一個“JSON”對象

原因是jquery會把JSON對象序列化成標准POST的形式,ASP.NET WebService需要的是JSON格式的數據,所以必須把你的數據變成一個JSON樣子的字符串


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM