【发布时间】:2011-09-18 05:09:34
【问题描述】:
实际上我在 JS 端声明了一个数组,如下所示:
var benefArray = {};
var benefCount = 0;
var benefNome = $('#txtBenefNome').val();
var benefDataNasc = $('#txtBenefDataNasc').val();
var benefGrauParent = $('#txtBenefGrauParent').val();
benefCount++;
benefArray[benefCount] = new Array(benefNome, benefDataNasc, benefGrauParent);
//Ajax Sender
function sendAjax(url, parametros, sucesso) {
$.ajax({
type: "POST",
url: url,
data: parametros,
contentType: "application/json; charset=utf-8",
dataType: "json",
success: sucesso
});
};
sendAjax("Client.aspx/AddClient", "{benefArray: \"" + benefArray + "\"}",
function (msg) {
var retorno = msg.d;
alert(retorno);
});
在我的 C# WebMethod 方面我有:
[WebMethod]
public static string AddClient(object benefArray)
{
var t = benefArray;
}
我正在尝试从 Javascript 中获取这些值,我需要做什么? 对此的任何见解将不胜感激!谢谢
【问题讨论】:
-
benefArray不是数组。它是一个对象。您分配给它的每个成员 (benefArray[benefCount] = new Array(benefNome, benefDataNasc, benefGrauParent);) 都是一个数组。诚然,在 JavaScript 中,JavaScript arrays aren't really arrays 的区别有点微妙,但是序列化程序在做出序列化决策时会倾向于查看类型以查看它是否是数组,因此这种区别可能会对您正在做的事情产生影响......
标签: c# javascript asp.net json