2012-10-08 50 views
0
$.ajax({ 
    url: 'somewhere.php', 
    data: { foo: 'foo', bar: 'bar' } 
}); 

我知道,這將產生一個GET字符串的螢火,類似於somepage.php?foo=foo&bar=barajax GET/POST,實際發送了什麼?

$.ajax({ 
    url: 'somewhere.php', 
    data: { foo: 'foo', bar: 'bar' }, 
    type: 'POST' 
}); 

,這將發佈形式與價值。

但它是使用$.ajax()時正在發送一個完整的頁面?或者它只是頁面的一部分?

+0

在這兩種情況下你都發送一個對象。 – undefined

回答

2

最終它只是另一個HTTP請求被髮送。您的$.ajax()調用的參數定義了請求的外觀。您不會發送頁面,就像您在瀏覽器中通過在地址欄中輸入google.com訪問google.com時不發送頁面一樣。

您收到一個頁面,雖然。通過ajax調用接收頁面和瀏覽頁面的區別在於,它不會發送到瀏覽器的渲染引擎並顯示在其自己的窗口或標籤中,但是該頁面的源代碼僅發送給您在jQuery中定義的回調函數。

+0

有道理,謝謝闡述! – Johan

2

data參數包含了所有你要發送的數據,所以它不是頁,也不全頁面(除非你把它的話)的一部分。

在您的例子您發送兩個變量foobar,這是內部的對象,這裏唯一的區別是發送數據的方法(getpost)。

+0

那麼發送ajax get和post又有什麼區別?我沒有看到任何理由使用get。 – Johan

+0

那麼,關於'GET'和'POST'的說法很多,例如[獲取VS郵政對於初學者(http://stevenclark.com.au/2008/01/12/get-vs-post-for-the-beginner/) – Zbigniew

+0

如此看來,你需要計算時使用'GET'以及何時使用'POST',還我發現[此帖](http://stackoverflow.com/questions/12399105/get-and-post-method-in-html) – Zbigniew

相關問題