我对ajax函数的数据字段有疑问。
通常,我们有ajax函数的语法可能是:
siteRoutes.delete('/', function(req, res) {
if(req.xhr) { // It sure works
console.log("AJAX request")
res.render('pages/site/index.hbs',{
successMessage: "Account was successfully deleted."
});
} else {
console.log("Regular request") //Being triggered
res.render('pages/site/index.hbs');
}
});
我的问题是:在数据字段中,我可以放置多个数据吗?换句话说,我可以通过:
$.ajax({
url: "/aaa/bbb/ccc",
method: "SomeMethod",
data: someData,
success: function (response) {
do something
}
为:
data: someData,
等等?
答案 0 :(得分:2)
您可以创建一个包含数据的对象。 data: {date1Name: data1Value, date2Name: data2Value}
。
您的完整代码应如下所示。
$.ajax({
url: "/aaa/bbb/ccc",
method: "SomeMethod",
data: {date1Name: data1Value, date2Name: data2Value},
success: function (response) {
do something
}
答案 1 :(得分:2)
您可以创建键/值对的对象。
$.ajax({
...
data : { data1: 'bar', data2: 'foo' },
...
});
答案 2 :(得分:1)
$.ajax({
url: "/aaa/bbb/ccc",
method: "SomeMethod",
data: "name=value&name1=value1&name2=value2",
success: function (response) {
//do something
}
});
答案 3 :(得分:1)
$.ajax({
url: "/aaa/bbb/ccc",
method: "SomeMethod",
data: {name : 'Luca', country : 'NA'},
success: function (response) {}
})
答案 4 :(得分:1)
以下是如何构建多个参数,将其保存在object
中并将其作为JSON.stringify()
发送:
var paramsToSend = {};
paramsToSend['data1'] = 'data1';
paramsToSend['data2'] = 'data2';
$.ajax({
...
data: {params:JSON.stringify(paramsToSend)},
...
});
答案 5 :(得分:1)
看起来你想把它作为数组传递?
$.ajax({
url: "/aaa/bbb/ccc",
method: "SomeMethod",
data: { data:[data1, data2, data3] },
success: function (response) {
do something
}
我建议将数组放在一个字典/ JSON对象中,这样你就可以使用一个变量名来键入你正在使用的任何后端语言。