<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 閱讀(914) 評論(1)  編輯  收藏

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

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


    網站導航:
     
    主站蜘蛛池模板: 相泽亚洲一区中文字幕| 亚洲成A人片在线观看中文| 亚洲∧v久久久无码精品| 男人j进女人p免费视频| 亚洲高清成人一区二区三区| 黄网站在线播放视频免费观看| 免费国产一级特黄久久| 美女视频黄频a免费| 亚洲午夜无码片在线观看影院猛| 深夜a级毛片免费视频| yy6080亚洲一级理论| 国产成人自产拍免费视频| 亚洲无码在线播放| 九九精品成人免费国产片| 精品日韩亚洲AV无码一区二区三区 | 亚洲最新中文字幕| 猫咪社区免费资源在线观看| 亚洲精品久久无码av片俺去也| 国产jizzjizz视频全部免费| 一个人看的免费高清视频日本| 久久精品国产亚洲麻豆| 亚洲黄色免费电影| 亚洲国产AV无码一区二区三区| 亚洲国产精品综合久久一线| baoyu116.永久免费视频| 亚洲成人免费网址| 免费看片A级毛片免费看| 国产精品成人69XXX免费视频| 亚洲好看的理论片电影| 国产妇乱子伦视频免费| 欧洲亚洲综合一区二区三区| 亚洲剧场午夜在线观看| 成人A级毛片免费观看AV网站| 国产亚洲视频在线观看网址| 亚洲午夜久久久影院伊人| 2021国内精品久久久久精免费| 日韩成人精品日本亚洲| 久久亚洲国产精品一区二区| 免费无码AV片在线观看软件| 一边摸一边爽一边叫床免费视频| 久久精品亚洲综合专区|