• 今天犯了一错误,贴下给需要的兄弟们!


    因为项目需要AJAX去调用WCF,但由于需要传递的值非常多,我就想做成JSON形式进行传递。

    代码如下:

        var datas = [];
            var option = new Array();
    
            option["FCustomerCode"]="@{@Session["FCustomerCode"].ToString()}";
    
            if ($("#StartFBillDate").val() != "") {
                option["StartFBillDate"] = $("#StartFBillDate").val();  
            }
            if ($("#EndFBillDate").val() != "") {
                option["EndFBillDate"] = $("#EndFBillDate").val();    
     
            }
              datas.push(option); 

    传递如下:

                data:'{"data":"'+datas+'","r":"'+ Math.random() * 10+'"}' ,
                contentType: "application/json;charset=utf-8",

    发现怎么搞都无法传递给后台,我一直把datas 给当成了数组,一直想格式化为JSON。其实错了。上面的Datas已经是JSON了。
    在群里朋友们的帮助下,终于解决了。感谢他们。

    解决办法:

    1. jquery.JSON.stringfy 利用插件

    2.利用方法

    function JsonToString(o) {    
        var arr = []; 
        var fmt = function(s) { 
            if (typeof s == 'object' && s != null) return JsonToStr(s); 
            return /^(string|number)$/.test(typeof s) ? "'" + s + "'" : s; 
        } 
        for (var i in o) 
             arr.push("'" + i + "':" + fmt(o[i])); 
        return '{' + arr.join(',') + '}'; 
    }

    3.利用服务器JavaScriptSerializer

    关键字: Json to string

  • 相关阅读:
    linux中关于权限的一些事
    Linux上用IP转发使内部网络连接互联网
    Linux常用基础命令
    linux路径问题
    ansible简介
    linux
    linux常用命令
    ls 命令详解
    Linux 实验 [Day 01]
    Linux SPI通过设备树文件添加设备
  • 原文地址:https://www.cnblogs.com/flyfish2012/p/2961886.html
Copyright © 2020-2023  润新知