JavaScript中的Ajax技術(shù)十分常用,而其中的$.ajax方法更是一種簡單而強大的HTTP請求方法。其中,傳json數(shù)據(jù)特別常見,下面介紹一下如何使用$.ajax傳json數(shù)據(jù)。
在$.ajax方法中,通過設(shè)置類型(type)、URL、數(shù)據(jù)(data)、請求成功后的回調(diào)函數(shù)(success)等參數(shù),可以發(fā)送一個帶有json數(shù)據(jù)的HTTP請求:
$.ajax({ type: "POST", url: "/example.json", data: { name: "John", location: "Boston" }, success: function(data){ console.log(data); } });
在這個例子中,我們通過一個POST請求發(fā)送了一個含有name和location兩個鍵值對的json對象,成功后的回調(diào)函數(shù)中輸出了服務(wù)器返回的數(shù)據(jù)。需要注意的是,由于我們傳輸?shù)氖莏son格式,所以服務(wù)器返回的數(shù)據(jù)也應(yīng)該是json數(shù)據(jù)格式,否則會報錯。
當然,如果我們需要發(fā)送到的數(shù)據(jù)本身就是json格式,也可以直接傳入一個json對象:
var jsonData = { name: "John", location: "Boston" }; $.ajax({ type: "POST", url: "/example.json", data: JSON.stringify(jsonData), success: function(data){ console.log(data); } });
這里需要用到JSON.stringify方法將json對象轉(zhuǎn)換為字符串格式,這樣才能正確地發(fā)送到服務(wù)器。在成功后的回調(diào)函數(shù)中,我們?nèi)匀豢梢詫⒎?wù)器返回的數(shù)據(jù)解析為json對象。
總之,$.ajax方法傳輸json數(shù)據(jù)的方式十分簡單,只需要設(shè)置好相應(yīng)的參數(shù)即可,是一種非常實用的方法。