如何在jQuery .load()函数中传递Accept标头,因为它需要传递。
答案 0 :(得分:6)
您需要使用ajax
方法中的beforeSend
参数,因为load
不会公开此功能:
$.ajax({
url: "http://www.server.com/",
beforeSend: function(jqXHR, settings) {
jqXHR.setRequestHeader("Accept", "application/json");
},
// You need to manually do the equivalent of "load" here
success: function(result) {
$("selector").html(result);
}
});
答案 1 :(得分:1)
如earlier answer by Jon中所述,load
无法独立完成。我更喜欢使用headers
方法上的ajax
选项,而不是beforeSend
:
$.ajax({
url: "http//example.com",
headers: {
Accept: "application/whatever" // Use the actual type you need.
},
success: function (data) {
// Put the data into the element you care about.
$("#foo").html(data);
},
error: function (jqXHR) {
// Put whatever you need to do if the query fails here.
}
});
最终结果是一样的,但如果我喜欢保存击键。