<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无码一区二区不卡| 久久这里只精品国产免费10| 亚洲AV乱码一区二区三区林ゆな| 九九精品成人免费国产片| 久久久久久a亚洲欧洲aⅴ| 国产一区二区免费| 亚洲另类激情综合偷自拍 | 亚洲av女电影网| 亚洲一区在线免费观看| 亚洲国产成人久久综合一区| 日韩精品成人无码专区免费| 亚洲成AV人片在WWW| 四虎永久免费地址在线网站| 视频免费1区二区三区| 亚洲情综合五月天| 91热久久免费精品99| 亚洲AV男人的天堂在线观看| 成熟女人特级毛片www免费| 久久人午夜亚洲精品无码区| 亚洲一级特黄无码片| 人妻无码久久一区二区三区免费| 亚洲性一级理论片在线观看| 国产视频精品免费| 免费人成在线观看视频高潮| 亚洲欧洲尹人香蕉综合| 国产成人免费ā片在线观看 | 日本视频在线观看永久免费| 亚洲精品欧洲精品| www国产亚洲精品久久久| 国产精品区免费视频| 亚洲精品免费网站| 在线精品亚洲一区二区三区| 最近免费视频中文字幕大全| 亚洲AV成人精品日韩一区| 亚洲AV无码国产在丝袜线观看 | 日本一线a视频免费观看| 天黑黑影院在线观看视频高清免费 | 成人免费无码视频在线网站|