国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

jQuery中get和post方法傳值測試及注意事項

2019-11-20 14:17:21
字體:
來源:轉載
供稿:網友

用 jQuery 的都知道,jQuery 的 get 和 post 方法有三個參數:地址,數據 和回調函數,但我們知道地址也可以跟隨數據的(形如:get_data.php?v1=1&v2=2),而且第二個參數可以省略,即第二個參數可 以直接寫回調函數,那么數據寫在地址后面和寫在 data 參數里有什么區別呢?
剛剛做了幾個實驗,看看下面的代碼就清楚了:
以下內容需要回復才能看到

jquery_data.php

echo "post: ";print_r($_POST);echo "get: ";print_r($_GET);?>

jquery_test.html

實驗1:

$(function() {// post 方法,兩處都有數據$.post('jquery_data.php?v1=1', {v2: 2}, function(data) {$('').append(data).appendTo('body');});});

返回結果:

post: Array([v2] => 2)get: Array([v1] => 1)

實驗2:

$(function(){// post 方法,數據在地址后面, 第二個參數為回調函數$.post('jquery_data.php?v1=1', function(data){$('<pre/>').append(data).appendTo('body');});});

返回結果,數據在 get 中:

post: Array()get: Array([v1] => 1)

實驗3:

$(function(){// get 方法,用 data 參數傳值$.get('jquery_data.php', {v2: 2}, function(data){$('<pre/>').append(data).appendTo('body');});});

返回結果,數據在 get 中:

post: Array()get: Array([v2] => 2)

實驗4:

$(function(){// get 方法,兩處都有數據$.get('jquery_data.php?v1=1', {v2: 2}, function(data){$('<pre/>').append(data).appendTo('body');});});

返回結果,兩處數據被合并了,都在 get 中:

post: Array()get: Array([v1] => 1[v2] => 2)

實驗5:

$(function(){// get 方法,兩處都有數據,且變量名相同$.get('jquery_data.php?v2=1', {v2: 2}, function(data){$('<pre/>').append(data).appendTo('body');});});

返回結果,數據在 get 中,且 data 參數中的數據覆蓋了地址后面的數據:

post: Array()get: Array([v2] => 2)

通過這幾個簡單的小例子不難看出,地址后面的數據永遠是以 get 形式傳遞的,無論使用的是 get 方法還是 post 方法;而 data 參數中的數據是根據方法決定傳遞方式的。

因此,為了避免混淆,建議大家盡量不要把數據寫在地址后面,而是統一放在 data 參數中。

當然,如果你想在用 post 方法時,同時利用 get 傳值,那么就可以把要以 get 方式傳遞的數據寫在地址后面,把要以 post 方式傳遞的數據寫在 data 參數中。

總之方法是死的,人是活的,怎么用還要看實際情況。子曾經曰過:實踐是檢驗真理的唯一標準。沒事做做實驗,掌握知識更牢固。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 鸡泽县| 凤翔县| 徐水县| 广宗县| 习水县| 日喀则市| 藁城市| 张北县| 南昌市| 巴里| 淳安县| 忻州市| 富锦市| 辽源市| 宜丰县| 安吉县| 抚顺县| 武邑县| 绥江县| 盐津县| 大兴区| 峨边| 江陵县| 广州市| 伽师县| 乌拉特中旗| 孝感市| 隆回县| 吴堡县| 漾濞| 雷波县| 阳城县| 紫金县| 梨树县| 松潘县| 宕昌县| 安溪县| 兴文县| 五家渠市| 长治市| 滁州市|