我javascript我有一个类似于:
的对象var myObj =
{
prop1: 1,
prop2: 2,
prop3: ["a","b","c","d","e"],
prop4: 4,
prop5: ["f","g","h","i"]
}
这是一个包含许多属性的对象。每个属性可能是也可能不是数组。
var serializedMyObj = JSON.stringify(myObj);
serializedMyObj
(通过查看firebug中序列化函数的结果找到):
"{ "prop1":1, "prop2":2, "prop3":["a","b","c","d", "e"], "prop4":4, "prop5":["f","g","h","i"] }"
如果我alert(serializedMyobj);
它会告诉我:
{ "prop1":1, "prop2":2, "prop3":[], "prop4":4, "prop5":[] }
真正的问题是当我将这些数据传递到Asp.Net PageMethod时,服务器会获得与警报对话框中显示的相同的数据,而不是在firebug中。它丢失了数组值,只放入[]
。
有谁知道为什么会发生这种情况或解决问题?这可能是我忽略的一些简单。
答案 0 :(得分:1)
我在firefox上得到以下(正确的)输出:
{"prop1":1,"prop2":2,"prop3":["a","b","c","d","e"],"prop4":4,"prop5":["f","g","h","i"]}
您使用的浏览器是什么?
另外,我注意到myObj
中JSON.stringify(myobj);
是小写的 - 我认为这只是一个错字?