Ajax函数:具有多个值的数据字段

时间:2017-07-25 12:32:47

标签: javascript jquery ajax

我对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,

等等?

6 个答案:

答案 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对象中,这样你就可以使用一个变量名来键入你正在使用的任何后端语言。