这里的简单问题。我想在ajax请求中发送两个字符串作为数据。问题在于这个ajax请求它只发送第二个数据而不是第一个。我如何在一个ajax请求中发送这两个?
$.ajax({ url: '#{add_cards_path}',
type: 'POST',
beforeSend: function(xhr) {xhr.setRequestHeader('X-CSRF-Token', '#{form_authenticity_token}')},
dataType: "json",
data: 'credit_uri=' + response.data.uri,
data: 'address=' + $('.address').val(),
success: function(response) {
window.location.assign(location.protocol + '//' + location.host);
}
});
我想发送“credit_uri”和“地址”。怎么样?
答案 0 :(得分:5)
对象不能包含重复键,在您的情况下为data
。
使用对象文字:
data: {credit_uri: response.data.uri, address: $('.address').val() }
$.ajax
会将数据转换为查询字符串。
答案 1 :(得分:1)
使用数据可以将多个数据发送到服务器。
data: {credit_uri: response.data.uri, address: $('.address').val() }
它就像一个物体。
答案 2 :(得分:1)
你可以试试这个。
$.ajax({ url: '#{add_cards_path}',
type: 'POST',
beforeSend: function(xhr) {xhr.setRequestHeader('X-CSRF-Token', '# {form_authenticity_token}')},
dataType: "json",
data: {"credit_uri:" + response.data.uri + ", "address:" + $('.address').val()}
success: function(response) {
window.location.assign(location.protocol + '//' + location.host);
}
});
答案 3 :(得分:1)
试试这段代码: -
$.ajax({ url: '#{add_cards_path}',
type: 'POST',
beforeSend: function(xhr) {xhr.setRequestHeader('X-CSRF-Token', '#{form_authenticity_token}')},
dataType: "json",
data: 'credit_uri=' + response.data.uri+'&address='+$('.address').val(),
success: function(response) {
window.location.assign(location.protocol + '//' + location.host);
}
});