表单中的键值用$("form").serialize()获取后,自己用方法将其改成json格式的字符串。如"{"a":"1","b":"2","c":"3"}"
但这个字符串无法用在$.post()方法中的data参数,如何这个字符串转化成一个JSON对象,以便向后台发送。

解决方案 »

  1.   

    引号的嵌套问题,改为
    "{'a':'1','b':'2','c':'3'}"
      

  2.   

    var json='{"a":"1","b":"2","c":"3"}';
    $.parseJSON(json);//这是转化为json对象了但你发送至后台,根本没这必要。反正还是要转回去的
      

  3.   

    var json='{"a":"1","b":"2","c":"3"}';
    $.ajax({ 
      url: "提交地址", 
      type: "post", 
      data: $.parseJSON(json)
    })Lz是想这样?发送json格式的数据去指定的提交地址?
      

  4.   

    但是这个字符串转换成JSON后,用$.post()无法将其作为参数提交到指定的URL
      

  5.   

    "{'a':'1','b':'2','c':'3'}"'{"a":"1","b":"2","c":"3"}'引号问题..
      

  6.   

    JSON.parse()将一个json格式的字条串转换成对象
    JSON.stringify()将一个对象转换成json字符串
      

  7.   


    var json='{"ax":"我是ax的值","b":"2","c":"3"}';
        $.ajax({ 
            url: "提交地址", 
            type: "post", 
            data: $.parseJSON(json),
            success: function (html) {
                alert(html);
            }
        })是谁说这样不行的呀??你自己试了吗?我用过一切正常你在提交地址的程序中就和get时读取参数一样,去读取ax的值,然后再回输出来
    alert(html);//就会弹出:我是ax的值
      

  8.   

    感谢 找到问题的原因了。不是字符串转json的问题。是。net__VIEWSTATE的值在作怪。