Jquery 在if条件下以$.ajax格式传递多个数据

Jquery 在if条件下以$.ajax格式传递多个数据,jquery,html,Jquery,Html,我想为角色号7传递4个参数,为其他角色传递3个参数。现在if条件中出现错误。如何在if条件中传递多个数据 未捕获的语法错误:意外标记== 这是因为您提供的语法不正确。如果AJAX请求: var ajaxData = { ids: join_selected_values, role: role }; if (role === 7) { ajaxData['prices'] = selected_price; ajaxData['currency'] = sele

我想为角色号7传递4个参数,为其他角色传递3个参数。现在if条件中出现错误。如何在if条件中传递多个数据

未捕获的语法错误:意外标记==


这是因为您提供的语法不正确。如果AJAX请求:

var ajaxData = {
    ids: join_selected_values,
    role: role
};

if (role === 7) {
    ajaxData['prices'] = selected_price;
    ajaxData['currency'] = selected_currency;
} else {
    ajaxData['comment'] = comment;
}

$.ajax({
    url: 'bulkUpdate',
    type: 'get',
    headers: {
        'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
    },
    data: ajaxData,
    success: function(data) {
        console.log('success');
    },
})

这是因为您提供的语法不正确。如果AJAX请求:

var ajaxData = {
    ids: join_selected_values,
    role: role
};

if (role === 7) {
    ajaxData['prices'] = selected_price;
    ajaxData['currency'] = selected_currency;
} else {
    ajaxData['comment'] = comment;
}

$.ajax({
    url: 'bulkUpdate',
    type: 'get',
    headers: {
        'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
    },
    data: ajaxData,
    success: function(data) {
        console.log('success');
    },
})
$.ajax({
url:'批量更新',
键入:“get”,
标题:{'X-CSRF-TOKEN':$('meta[name=“CSRF-TOKEN”]')。attr('content')},
数据:角色==7{
“ID”:联接选定的值,
“角色”:角色,
“价格”:选定的价格,
“货币”:选定的\u货币
} :  {
“ID”:联接选定的值,
“角色”:角色,
“评论”:评论
}, 
成功:功能(数据){
console.log('success');
},
});
$.ajax({
url:'批量更新',
键入:“get”,
标题:{'X-CSRF-TOKEN':$('meta[name=“CSRF-TOKEN”]')。attr('content')},
数据:角色==7{
“ID”:联接选定的值,
“角色”:角色,
“价格”:选定的价格,
“货币”:选定的\u货币
} :  {
“ID”:联接选定的值,
“角色”:角色,
“评论”:评论
}, 
成功:功能(数据){
console.log('success');
},

});
您正在
$.ajax
对象中使用
if-else
。因此,您可以做的是比较您的条件,然后在
$.ajax
调用之外创建一个
数据
对象。使用此选项可以防止该错误

var role = 10;
var data;
if(role == 7){
      data = {
          'ids'  : join_selected_values,
          'role' :role,
          'prices':selected_price,
          'currency':selected_currency
        }
      }else {
      data = {
          'ids'  : join_selected_values,
          'role' :role,
          'comment':comment
      }
}
$.ajax({
        url: 'bulkUpdate',
        type: 'get',
        headers: {'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')},
        data: data,  
        success: function (data) {
          console.log('success');
        }
}); 

您正在
$.ajax
对象中使用
if-else
。因此,您可以做的是比较您的条件,然后在
$.ajax
调用之外创建一个
数据
对象。使用此选项可以防止该错误

var role = 10;
var data;
if(role == 7){
      data = {
          'ids'  : join_selected_values,
          'role' :role,
          'prices':selected_price,
          'currency':selected_currency
        }
      }else {
      data = {
          'ids'  : join_selected_values,
          'role' :role,
          'comment':comment
      }
}
$.ajax({
        url: 'bulkUpdate',
        type: 'get',
        headers: {'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')},
        data: data,  
        success: function (data) {
          console.log('success');
        }
}); 

你可以像下面这样做

 var datatosend = { ids: join_selected_values, role: role}
    $.ajax({
        url: 'bulkUpdate',
        type: 'get',
        headers: {
            'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
        },
        data: {data:datatosend},
        success: function(data) {
            console.log('success');
        },
    });

您将在服务器端获取所有参数,并根据角色执行其他过程。

您可以按如下方式执行

 var datatosend = { ids: join_selected_values, role: role}
    $.ajax({
        url: 'bulkUpdate',
        type: 'get',
        headers: {
            'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
        },
        data: {data:datatosend},
        success: function(data) {
            console.log('success');
        },
    });

您将在服务器端获取所有参数,并根据角色执行其他过程。

如何在php中获取此数据page@user3386779这是一个完全不同的问题-您应该问一个新问题。如何在php中获取这些数据page@user3386779这是一个完全不同的问题——你应该问一个新问题。