<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆-31  評論-2  文章-0  trackbacks-0

    用 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 參數中。

    總之方法是死的,人是活的,怎么用還要看實際情況。子曾經曰過:實踐是檢驗真理的唯一標準。沒事做做實驗,掌握知識更牢固。
    posted on 2009-07-29 19:22 xiaoxinchen 閱讀(915) 評論(1)  編輯  收藏

    評論:
    # re: jQuery 中get 和post 方法傳值需要注意的[未登錄] 2009-12-19 15:37 | a
    a  回復  更多評論
      

    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 亚洲福利一区二区精品秒拍| 日韩亚洲国产高清免费视频| 最近中文字幕无免费| 亚洲女人初试黑人巨高清| 免费看片A级毛片免费看| 免费无遮挡无遮羞在线看| 亚洲电影免费在线观看| 真实乱视频国产免费观看| 国产精品青草视频免费播放| 亚洲视频在线观看不卡| 国产美女无遮挡免费视频网站| 国产免费区在线观看十分钟| 亚洲欧洲春色校园另类小说| 亚洲AV中文无码乱人伦| 99精品视频在线观看免费播放| 亚洲精品欧美综合四区| 亚洲国产精品VA在线看黑人 | 亚洲国产成人精品无码一区二区 | 亚洲AV美女一区二区三区| 成人免费在线观看网站| 最近免费字幕中文大全| 亚洲私人无码综合久久网| 国产成人亚洲综合无码精品| 成人五级毛片免费播放| 久久精品无码专区免费青青| 羞羞视频免费网站日本| 亚洲日韩精品国产3区| 久久精品国产亚洲av四虎| 免费a级毛片在线观看| 一二三四影视在线看片免费| 免费人成在线观看网站| 视频免费1区二区三区| 亚洲私人无码综合久久网| 亚洲国产韩国一区二区| 亚洲av无码无在线观看红杏| 亚洲欧洲自拍拍偷精品 美利坚 | 久久99青青精品免费观看| 人成电影网在线观看免费| 亚洲色中文字幕在线播放| 亚洲免费黄色网址| 亚洲午夜在线电影|