2017-03-03 10 views
2

jQueryのajaxメソッドをオブジェクトのプロパティとして定義するにはどうすればよいですか?メソッドとしてjQuery.ajaxを定義する

私はAJAXリクエスト

$.ajax({ 
    type: "POST", 
    url: "../PHP/RoadtripsTable.php", 
    data: ({fnChoice: "listRoadtrips"}) 
}) 

を持っていると私はこのようなオブジェクトoのプロパティxを定義したいと思います:

var o = { 
    x: $.ajax({ 
     type: "POST", 
     url: "../PHP/RoadtripsTable.php", 
     data: ({fnChoice: "listRoadtrips"}) 
    }) 
} 

が、これは動作するようには思えません。 jQuery-Libraryの$。()の中で使用しているので、o.xは遅延させる必要があります。

答えて

0

これはあなたのために働く必要があります。

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"}) 
    }); 
    } 
} 
+0

いいえ、これは動作しません。 when節 - ここで 'x()'メソッドを渡すと、このように書くときには機能しません。おそらく 'function(){..}'ラッパーがそれをもう遅延させないからです。 – Nighel

+0

このメソッドを使用している場合、残りのコードはどのように見えますか? – jeffdill2

+0

関数 'x:function(){return $ .ajax(...);}からjqXHRを返すことを忘れないでください。 } ' –

関連する問題