Javascript jqueryajax函数-如何为JSON使用变量?
我希望能够通过变量提供JSON变量名及其值,而不是硬编码:Javascript jqueryajax函数-如何为JSON使用变量?,javascript,ajax,jquery,Javascript,Ajax,Jquery,我希望能够通过变量提供JSON变量名及其值,而不是硬编码: data: { inputVar : inputVal }, 但是像那样做和定义 inputVar = 'myInputVar'; 不起作用,直接输入POST变量名只起作用: 'myInputVar' : inputVal 最后,我想完成的是创建一个函数,通过在函数调用中提供JSON格式的AJAX变量和值,我只需调用它就可以以JSON格式进行AJAX调用: makeAjaxJsonCall(fileName, postVar,
data: {
inputVar : inputVal
},
但是像那样做和定义
inputVar = 'myInputVar';
不起作用,直接输入POST变量名只起作用:
'myInputVar' : inputVal
最后,我想完成的是创建一个函数,通过在函数调用中提供JSON格式的AJAX变量和值,我只需调用它就可以以JSON格式进行AJAX调用:
makeAjaxJsonCall(fileName, postVar, postVal) {
$.ajax({
type : 'POST',
url : fileName,
dataType : 'json',
data: {
inputVar : inputVal
},
success : function(data) {
.
.
.
},
error : function(XMLHttpRequest, textStatus, errorThrown) {
.
.
.
}
});
}
有什么想法吗
另外,我真的不太了解JavaScript编程,所以请在回复时用完整的代码进行精确描述-谢谢 你想要这样的东西吗
makeAjaxJsonCall(fileName, postVar, postVal) {
var data = {};
data[postVar] = postVal;
$.ajax({
type : 'POST',
url : fileName,
dataType : 'json',
data: data,
success : function(data) {
.
.
.
},
error : function(XMLHttpRequest, textStatus, errorThrown) {
.
.
.
}
});
}您可以像这样设置对象值
var obj = {};
//This is the same as...
obj.value1 = 'one';
//This...
var varName = 'value1'
obj[varName] = 'one';
最后两个答案的小说明: 可以通过以下方式定义对象的元素:
var myObj = {};
myObj.element = 1;
// And using a variable just like you want:
var key = 'myKey';
myObj[key] = 2;
console.log(myObj.key); // 2
因此,您可以先构建数据对象,然后将其传递给ajax哈希:
// ...
var myData = {};
myData[inputVal] = 'my value';
//...
makeAjaxJsonCall(fileName, postVar, postVal) {
$.ajax({
type : 'POST',
url : fileName,
dataType : 'json',
data: myData, // <-------------
success : function(data) {
// ...
/。。。
var myData={};
myData[inputVal]=“我的值”;
//...
makeAjaxJsonCall(文件名、postVar、postVal){
$.ajax({
键入:“POST”,
url:fileName,
数据类型:“json”,
data:myData,//使用JSON.stringify()