我有以下代码:
name= "a";
value="b"
$.post("ajax.php", {name:value})....
但是ajax.php
会收到name=b
而不是a=b
。
我如何让它接受后者?
答案 0 :(得分:8)
var obj = {};
obj[name] = value;
$.post("ajax.php", obj)...
答案 1 :(得分:3)
为了获得您想要的效果,您可以执行以下操作...
name = "a";
value = "b";
var values = {};
values[name] = value;
$.post("ajax.php", values);
答案 2 :(得分:2)
此处的名称不被视为可替换 ......
你应该手动写:
{a:"b"}
答案 3 :(得分:2)
name= "a";
value="b";
var o = {};
o[name]= value;
$.post("ajax.php", o);
答案 4 :(得分:1)
您不能将变量用于关键元素(如果您考虑使用文字声明)。它必须是静态的
你需要这样做:
$.post("ajax.php", {"a":value})
答案 5 :(得分:1)
您可以通过可编程方式构建对象。您可以通过以下方式创建对象:
var obj = {};
obj["a"] = "b";
所以试试这个:
var obj = {};
obj[name] = value;
并将其传递给后期电话......