我想在jquery中使用getJSON函数向服务器发送变量。
y = "some data";
if (con == true) {
t = "brand";
}
else {
t = "type";
}
$.getJSON('url', { t: y }).done(function (data) {
alert(data);
});
在服务器端,我对使用getJSON发送的每个信息都有功能。例如,当我使用brand
代替t
时,服务器端的brand()
函数被调用,当我发送type
而不是t
时,{{1调用服务器端的函数。
type()
变量在某些情况下是不同的。例如,t
变量的值在一种情况下等于t
,在另一种情况下等于brand
。我可以在这种情况下,使用type
的值而不是t
?
答案 0 :(得分:1)
正如@u_mulder所指出的那样,将数据以明确定义的结构发送到服务器会更好,因此你的getJSON调用看起来像
$.getJSON('url', { method: t, data: y }).done(function (data) {...});
如果您倾向于使用您提到的结构,则必须执行类似
的操作var dataObj = {};
dataObj[t] = y;
$.getJSON('url', dataObj).done(function (data) {...});
这样,t
的值将被填充为dataObj
对象下的属性。因此,dataObj
值将等同于{ brand: "some data" }
或{ type: "some data" }
,具体取决于执行的分支。