Javascript 将jQuery.ajax定义为一种方法
如何将jQuery ajax方法定义为对象的属性 我有ajax请求Javascript 将jQuery.ajax定义为一种方法,javascript,jquery,ajax,methods,deferred,Javascript,Jquery,Ajax,Methods,Deferred,如何将jQuery ajax方法定义为对象的属性 我有ajax请求 $.ajax({ type: "POST", url: "../PHP/RoadtripsTable.php", data: ({fnChoice: "listRoadtrips"}) }) 我想定义一个对象的属性x,如下所示: var o = { x: $.ajax({ type: "POST", url: "../PHP/RoadtripsTable.php"
$.ajax({
type: "POST",
url: "../PHP/RoadtripsTable.php",
data: ({fnChoice: "listRoadtrips"})
})
我想定义一个对象的属性x,如下所示:
var o = {
x: $.ajax({
type: "POST",
url: "../PHP/RoadtripsTable.php",
data: ({fnChoice: "listRoadtrips"})
})
}
但这似乎不起作用。我需要将o.x设置为延迟,因为我在jQuery库的$.()中使用它。这应该适合您:
var o = {
x: function() {
$.ajax({
type: "POST",
url: "../PHP/RoadtripsTable.php",
data: ({fnChoice: "listRoadtrips"})
});
}
}
这一备选声明也应适用于:
var o = {
x() {
$.ajax({
type: "POST",
url: "../PHP/RoadtripsTable.php",
data: ({fnChoice: "listRoadtrips"})
});
}
}
不,这不行。when子句——我将方法
x()
to交给它——在我这样编写它时不起作用。也许这是因为function(){..}
包装器不再使其成为延迟的。在使用此方法时,代码的其余部分是什么样子的?不要忘记从函数返回jqXHR-x:function(){return$.ajax(…);}